Logo
  • Home
  • About
  • Hiring
  • Field Kit
  • Labs
  • Connect
Spherical

Home

About

Hiring

Field Kit

Labs

Connect

Privacy Policy

🎨

Spherical.studio CSS

Copy this complete CSS and paste it into Super.so → Code → CSS tab.

Current status:

  • ✅ Light and dark mode support
  • ✅ All links underlined, gray on hover
  • ✅ Footer spacing and horizontal rule fixed
  • ✅ Footer logo hidden
  • ✅ Firefox iOS fixes included
/*
========================================
SPHERICAL WEBSITE STYLES
Based on Matt Downey's Primer template
Custom stylesheet for spherical.studio
========================================
*/

/* ========================================
   BOOTSTRAP GRID SYSTEM
   ======================================== */

.container,
.container-fluid,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: 0.75rem;
  padding-left: 0.75rem;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 860px;
  }
}

@media (min-width: 1200px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 1160px;
  }
}

@media (min-width: 1500px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1540px;
  }
}

.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -0.75rem;
  margin-left: -0.75rem;
}

/* ========================================
   COLOR VARIABLES
   ======================================== */

:root {
  --bg: #FFFFFF;
  --contrast: #070200;
  --accent: #FE5B12;
}

.dark {
  --bg: #0a0a0a;
  --contrast: #f5f5f5;
  --accent: #FE5B12;
}

/* ========================================
   HIDE NOTION ELEMENTS
   ======================================== */

.super-badge,
.notion-navbar,
.notion-header,
.notion-header__content,
.notion-divider,
.notion-toggle {
  display: none !important;
}

/* ========================================
   FONTS
   ======================================== */

@font-face {
  font-family: 'Satoshi Bold';
  src: url("https://mattdowney.github.io/primer/fonts/Satoshi-Bold.woff2") format("woff2"),
       url("https://mattdowney.github.io/primer/fonts/Satoshi-Bold.woff") format("woff");
  font-weight: 700;
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: 'Satoshi Regular';
  src: url("https://mattdowney.github.io/primer/fonts/Satoshi-Regular.woff2") format("woff2"),
       url("https://mattdowney.github.io/primer/fonts/Satoshi-Regular.woff") format("woff");
  font-weight: 400;
  font-display: swap;
  font-style: normal;
}

/* ========================================
   BASE STYLES
   ======================================== */

html {
  font-family: "Satoshi Regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
}

body {
  background: var(--bg) !important;
  letter-spacing: 0.025rem !important;
}

body.no-scroll {
  overflow: hidden !important;
}

html, body,
h1, h2, h3, p,
ul, ol, li {
  color: var(--contrast) !important;
  font-style: normal;
  padding: 0;
  margin: 0;
}

html, body {
  -ms-overflow-style: none;
  min-height: 100%;
  width: 100%;
  font-family: "Satoshi Regular", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* ========================================
   LINK STYLES - GLOBAL
   ======================================== */

a {
  color: var(--contrast) !important;
  text-decoration: underline !important;
  transition: color 0.2s ease-in-out !important;
  border-bottom: none !important;
}

a:hover {
  color: rgba(var(--contrast), 0.5) !important;
}

p .notion-semantic-string a,
p.notion-text__content .notion-semantic-string a,
.notion-text .notion-text__content .notion-semantic-string .notion-link,
.notion-text .notion-text__content .notion-semantic-string .link {
  color: var(--contrast) !important;
  text-decoration: underline !important;
  border-bottom: none !important;
  opacity: 1 !important;
}

p .notion-semantic-string a:hover,
p.notion-text__content .notion-semantic-string a:hover {
  color: rgba(var(--contrast), 0.5) !important;
}

.super-navbar__item,
.super-navbar__item a,
.super-navbar__mobile-menu a,
.super-navbar__dropdown a,
.super-navbar .super-navbar__content .super-navbar__item-list a.super-navbar__item {
  text-decoration: none !important;
}

.super-navbar__item:hover,
.super-navbar__item a:hover {
  color: rgba(var(--contrast), 0.5) !important;
}

/* ========================================
   TYPOGRAPHY
   ======================================== */

h1, h2, h3, h4, h5, h6 {
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

h1 {
  letter-spacing: -0.025rem;
}

h1.notion-heading {
  margin-top: 6rem;
  margin-bottom: 1.5rem;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  font-size: 3.5rem !important;
  width: 85%;
  line-height: 1.3 !important;
}

@media (max-width: 1199.98px) {
  h1.notion-heading {
    width: 100%;
  }
}

@media (max-width: 767.98px) {
  h1.notion-heading {
    margin-top: 4rem !important;
    font-size: 2.3875rem !important;
    text-align: left !important;
    margin-bottom: 1.25rem !important;
  }
}

h1.notion-heading .notion-semantic-string {
  line-height: 1.1 !important;
}

h2.notion-heading {
  letter-spacing: 0.025rem !important;
  text-transform: uppercase !important;
  font-size: 1.25rem !important;
}

h3 {
  margin-bottom: 0.5rem !important;
  font-size: 1.25rem !important;
}

h3 a {
  color: var(--contrast) !important;
  border-bottom: none !important;
  opacity: 1 !important;
  transition: all 0.2s ease-in-out !important;
}

h3 a:hover {
  color: rgba(var(--contrast), 0.5) !important;
}

h3.notion-collection__header {
  display: none !important;
}

p, p.notion-text__content {
  font-size: 1.125rem !important;
  padding: 0 !important;
}

p .notion-semantic-string,
p.notion-text__content .notion-semantic-string {
  line-height: 1.75 !important;
}

/* ========================================
   MEDIA
   ======================================== */

iframe, video, img {
  max-width: 100%;
  display: block;
}

img {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.notion-image {
  margin: 0 !important;
}

.notion-image img {
  border-radius: 0.5rem !important;
}

/* ========================================
   NOTION SPECIFIC
   ======================================== */

.notion-root {
  width: 100% !important;
}

.notion-heading {
  padding: 0 !important;
}

.notion-collection-gallery {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.notion-text {
  min-height: 2rem !important;
}

.notion-text .notion-text__content {
  letter-spacing: 0.025rem !important;
}

.notion-text .notion-text__content .notion-semantic-string {
  white-space: wrap !important;
  line-height: 1.75 !important;
  margin-bottom: 2rem !important;
  letter-spacing: 0.025rem !important;
}

.notion-text .notion-text__content .notion-semantic-string strong {
  text-align: center !important;
  margin: 0 auto !important;
  display: block !important;
  margin-top: 2rem;
}

@media (max-width: 767.98px) {
  .notion-text .notion-text__content .notion-semantic-string strong {
    text-align: left !important;
  }
}

.notion-text .notion-text__content .notion-semantic-string strong a.link {
  background: var(--contrast) !important;
  color: var(--bg) !important;
  opacity: 1 !important;
  padding: 0.6rem 1.6rem !important;
  border-radius: 500rem !important;
  font-size: 1.125rem !important;
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  letter-spacing: 0.05rem !important;
  border: 0.2rem solid var(--contrast) !important;
  transition: all 0.2s ease-in-out !important;
  text-decoration: none !important;
}

.notion-text .notion-text__content .notion-semantic-string strong a.link:hover {
  background: var(--bg) !important;
  color: var(--contrast) !important;
}

.notion-property.notion-property__title {
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

.color-gray {
  font-style: normal !important;
  color: var(--contrast) !important;
  font-size: 1.125rem !important;
  letter-spacing: 0.025rem !important;
  display: block !important;
  text-align: center !important;
  margin-bottom: 1.5rem !important;
  opacity: 0.5 !important;
}

@media (max-width: 767.98px) {
  .color-gray {
    text-align: left !important;
  }
}

/* ========================================
   LAYOUT
   ======================================== */

.super-content {
  display: flex !important;
  width: 100% !important;
  max-width: 1300px !important;
  margin: 0 auto !important;
  padding-bottom: 0 !important;
}

@media (max-width: 1199.98px) {
  .super-content {
    padding-left: calc(env(safe-area-inset-left) + 1.5rem) !important;
    padding-right: calc(env(safe-area-inset-right) + 1.5rem) !important;
  }
}

@media (max-width: 767.98px) {
  .super-content {
    display: block !important;
  }
}

/* ========================================
   NAVBAR
   ======================================== */

.super-navbar {
  background: var(--bg) !important;
  height: 6rem !important;
  margin: 0 auto !important;
  max-width: 1140px !important;
}

@media (max-width: 1199.98px) {
  .super-navbar {
    padding-left: calc(env(safe-area-inset-left) + 1.5rem) !important;
    padding-right: calc(env(safe-area-inset-right) + 1.5rem) !important;
  }
}

.super-navbar .super-navbar__content {
  padding: 1rem !important;
}

@media (max-width: 1199.98px) {
  .super-navbar .super-navbar__content {
    padding: 1rem 0.5rem !important;
  }
}

@media (max-width: 767.98px) {
  .super-navbar .super-navbar__content {
    padding: 1rem 0 !important;
  }
}

.super-navbar .super-navbar__content a.super-navbar__logo {
  padding: 0 !important;
}

.super-navbar .super-navbar__content a.super-navbar__logo span.super-navbar__logo-text {
  font-size: 1.5rem !important;
  color: var(--contrast) !important;
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

.super-navbar .super-navbar__content .super-navbar__item-list a.super-navbar__item {
  color: var(--contrast) !important;
  opacity: 1 !important;
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  text-transform: uppercase !important;
  font-size: 0.8rem !important;
}

.super-navbar .super-navbar__content .super-navbar__item-list a.super-navbar__item:hover {
  color: rgba(var(--contrast), 0.5) !important;
}

.super-navbar .super-navbar__content .super-navbar__button {
  opacity: 1 !important;
  padding: 0 !important;
}

.super-navbar .super-navbar__content .super-navbar__button svg {
  width: 1.875rem !important;
  height: 1.875rem !important;
}

.super-navbar .super-navbar__content .super-navbar__actions {
  padding: 0 !important;
}

.super-navbar .super-navbar__menu-wrapper.active .super-navbar__menu {
  background: var(--contrast) !important;
}

.super-navbar .super-navbar__menu-wrapper.active .super-navbar__menu-close {
  height: 1.875rem !important;
  right: 1.875rem !important;
  top: 1.1875rem !important;
  padding: 0 !important;
  background: var(--contrast) !important;
  opacity: 1 !important;
}

@media (max-width: 767.98px) {
  .super-navbar .super-navbar__menu-wrapper.active .super-navbar__menu-close {
    right: 0.9rem !important;
    top: 1.6875rem !important;
  }
}

.super-navbar .super-navbar__menu-wrapper.active .super-navbar__menu-close svg {
  width: 1.875rem !important;
  height: 1.875rem !important;
  stroke: var(--bg) !important;
}

.super-navbar .super-navbar__menu-wrapper.active .super-navbar__menu-item-list {
  background: var(--contrast) !important;
}

.super-navbar .super-navbar__menu-wrapper.active .super-navbar__menu-item-list a {
  color: var(--bg) !important;
}

.super-navbar__mobile-menu,
.super-navbar__dropdown {
  width: 200px !important;
  max-width: 200px !important;
}

.super-navbar__mobile-menu .super-navbar__item {
  padding: 0.4rem 1rem !important;
  line-height: 1.3 !important;
  font-size: 0.9rem !important;
}

.super-navbar__mobile-menu {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

/* Fix mobile menu positioning - force it near the hamburger */
.super-navbar__mobile-menu,
.super-navbar__dropdown {
  position: fixed !important;
  right: 1.5rem !important;
  left: auto !important;
  top: 6rem !important;
  width: 200px !important;
  max-width: 200px !important;
}

/* Position close button correctly */
.super-navbar__menu-wrapper.active .super-navbar__menu-close {
  position: fixed !important;
  right: 1.5rem !important;
}

@media (max-width: 767.98px) {
  .super-navbar__mobile-menu,
  .super-navbar__dropdown {
    right: 1rem !important;
  }
}

/* ========================================
   COLUMN LISTS
   ======================================== */

.notion-column-list {
  margin-left: 6.875rem !important;
  margin-right: 6.875rem !important;
  padding-top: 0rem !important;
  margin-bottom: 2rem !important;
  border-top: 1px solid transparent !important;
}

.notion-column-list.last,
.notion-column-list:last-of-type,
.notion-column-list:last-child {
  margin-bottom: 0 !important;
  border-bottom: none !important;
}

@media (max-width: 1199.98px) {
  .notion-column-list {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

.notion-column-list .notion-column {
  text-align: left !important;
}

.notion-column-list ~ .notion-column-list {
  padding-top: 3.75rem !important;
  padding-bottom: 1.5rem !important;
}

.notion-column-list ~ .notion-column-list:before {
  content: '';
  opacity: 0.15 !important;
  position: relative;
  background-color: var(--contrast);
  width: 100%;
  height: 1px;
  top: -4rem;
  display: block;
}

.notion-column-list p {
  margin-bottom: 2rem !important;
}

/* ========================================
   ABOUT PAGE
   ======================================== */

#page-about .notion-column-list {
  padding-top: 2rem !important;
  margin-bottom: 0rem !important;
  border-top: 1px solid transparent !important;
}

#page-about .super-content .notion-root .notion-column-list ~ .notion-column-list {
  padding-top: 4rem !important;
}

#page-about .super-content .notion-root .notion-column-list ~ .notion-column-list:before {
  content: '';
  opacity: 0.15 !important;
  position: relative;
  background-color: var(--contrast);
  width: 100%;
  height: 1px;
  top: -4rem;
}

/* ========================================
   HOMEPAGE (INDEX)
   ======================================== */

#page-index .notion-header.page {
  display: none !important;
}

#page-index h1 {
  margin-bottom: 2.25rem !important;
}

#page-index .notion-collection-gallery {
  border-top: none !important;
}

/* ========================================
   GALLERY CARDS (Projects, Writing, Blog)
   ======================================== */

#page-projects .notion-text,
#page-writing .notion-text,
#page-blog .notion-text {
  text-align: center !important;
}

@media (max-width: 767.98px) {
  #page-projects .notion-text,
  #page-writing .notion-text,
  #page-blog .notion-text {
    text-align: left !important;
  }
}

#page-projects .notion-text p,
#page-writing .notion-text p,
#page-blog .notion-text p {
  color: rgba(var(--contrast), 0.5) !important;
  margin-bottom: 0 !important;
}

#page-projects .notion-collection-gallery.large,
#page-writing .notion-collection-gallery.large,
#page-blog .notion-collection-gallery.large {
  display: grid !important;
  grid-column-gap: 2.5rem !important;
  grid-row-gap: 2.5rem !important;
  border-top: none !important;
  margin-top: 2.75rem !important;
  margin-bottom: 4rem !important;
  grid-template-columns: repeat(2, 1fr);
}

@media (max-width: 767.98px) {
  #page-projects .notion-collection-gallery.large,
  #page-writing .notion-collection-gallery.large,
  #page-blog .notion-collection-gallery.large {
    margin-top: 4rem !important;
    grid-template-columns: repeat(1, 1fr);
  }
}

#page-projects .notion-collection-gallery.large .notion-collection-card,
#page-writing .notion-collection-gallery.large .notion-collection-card,
#page-blog .notion-collection-gallery.large .notion-collection-card {
  box-shadow: none !important;
  border-radius: 0.5rem !important;
  background: none !important;
  margin-bottom: 2rem !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover,
#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large,
#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large > div,
#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large img,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large > div,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large img,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large > div,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large img {
  height: 18rem !important;
  max-height: 28rem !important;
  border-bottom: none !important;
  border-radius: 0.5rem !important;
}

@media (max-width: 767.98px) {
  #page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover,
  #page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large,
  #page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large > div,
  #page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large img,
  #page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large,
  #page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large > div,
  #page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large img,
  #page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover,
  #page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large,
  #page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large > div,
  #page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large img {
    height: 20rem !important;
    max-height: 20rem !important;
  }
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-property__title,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-property__title,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-property__title {
  font-size: 1.25rem !important;
  padding: 0 !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-property__title .notion-semantic-string,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-property__title .notion-semantic-string,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-property__title .notion-semantic-string {
  white-space: normal !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-property__title .notion-property__title__icon-wrapper,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-property__title .notion-property__title__icon-wrapper,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-property__title .notion-property__title__icon-wrapper {
  display: none !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-property__title span,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-property__title span,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-property__title span {
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 1.25rem !important;
  margin-bottom: 0.25rem !important;
  line-height: 1.4 !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover,
#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__cover.large {
  margin-bottom: 1.75rem !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content {
  padding-inline-start: 0 !important;
  padding-bottom: 0 !important;
  text-align: left !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-semantic-string,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-semantic-string,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-semantic-string {
  white-space: normal !important;
  font-size: 1.0875rem !important;
  color: var(--contrast) !important;
  letter-spacing: 0.025rem !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-collection-card__property,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-collection-card__property,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-collection-card__property {
  margin-bottom: 1rem !important;
}

#page-projects .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-collection-card__property .notion-property__date .date,
#page-writing .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-collection-card__property .notion-property__date .date,
#page-blog .notion-collection-gallery.large .notion-collection-card .notion-collection-card__content .notion-collection-card__property .notion-property__date .date {
  color: rgba(var(--contrast), 0.5) !important;
  text-transform: uppercase !important;
  font-size: 0.8125rem !important;
  letter-spacing: 0.025rem !important;
}

/* ========================================
   PROJECT & WRITING PAGE LAYOUTS
   ======================================== */

[id*=projects-] .notion-page__properties,
[id*=projects-] .notion-text,
[id*=projects-] .notion-quote,
[id*=projects-] .notion-divider,
[id*=projects-] .notion-caption,
[id*=projects-] .notion-code,
[id*=writing-] .notion-page__properties,
[id*=writing-] .notion-text,
[id*=writing-] .notion-quote,
[id*=writing-] .notion-divider,
[id*=writing-] .notion-caption,
[id*=writing-] .notion-code {
  width: 100%;
  max-width: 43.75rem !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

[id*=projects-] .notion-image,
[id*=writing-] .notion-image {
  max-width: 100% !important;
  margin-bottom: 2rem !important;
}

@media (max-width: 1199.98px) {
  [id*=writing-] .notion-image {
    width: 100% !important;
    max-width: 100% !important;
  }
}

[id*=projects-] h1.notion-heading,
[id*=writing-] h1.notion-heading {
  width: 85% !important;
}

@media (max-width: 767.98px) {
  [id*=writing-] h1.notion-heading {
    width: 100% !important;
  }
}

[id*=projects-] h2,
[id*=writing-] h2 {
  margin-top: 2rem !important;
  margin-bottom: 0.5rem !important;
  margin-right: auto;
  margin-left: auto;
  text-transform: unset !important;
  font-size: 1.9rem !important;
  max-width: 43.75rem;
  width: 100%;
}

[id*=projects-] .notion-bulleted-list,
[id*=projects-] .notion-numbered-list,
[id*=writing-] .notion-bulleted-list,
[id*=writing-] .notion-numbered-list {
  margin: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
  line-height: 1.75 !important;
  font-size: 1.125rem !important;
  letter-spacing: 0.025rem !important;
  width: 100%;
  max-width: 43.75rem !important;
}

[id*=projects-] pre,
[id*=writing-] pre {
  background: rgba(255, 255, 255, 0.5) !important;
}

/* ========================================
   TABLE COLLECTIONS
   ======================================== */

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table td,
.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table tr {
  border: none !important;
  padding: 0 !important;
  font-size: 1.125rem !important;
  line-height: 1.75rem !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table tr {
  display: block !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__head {
  display: none !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell.date .notion-property__date span.date {
  display: block !important;
  margin-top: 3.125rem !important;
  font-size: 0.8125rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.15rem !important;
  line-height: 2 !important;
  color: rgba(var(--contrast), 0.5) !important;
  margin-bottom: 0.75rem !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell.title {
  display: block !important;
  height: 100% !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell.title a {
  font-size: 1.25rem !important;
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  text-decoration: none !important;
  transition: all 0.2s ease-in-out !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell.title a:hover {
  color: rgba(var(--contrast), 0.5) !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell.title a span {
  border: none !important;
  line-height: 1.4 !important;
  margin-bottom: 0.25rem !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell.title a span:hover {
  border: none !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell.title.no-click {
  display: none !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell .notion-property__title__icon-wrapper {
  display: none !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table .notion-collection-table__cell .notion-semantic-string {
  white-space: pre-wrap !important;
}

.notion-column-list .notion-collection .notion-collection-table__wrapper .notion-collection-table tr:first-child .notion-collection-table__cell.date .notion-property__date span.date {
  display: block !important;
  margin-top: 0 !important;
}

/* ========================================
   PILLS (Select/Multi-select)
   ======================================== */

.notion-collection-table__cell.select .notion-pill,
.notion-collection-table__cell.multi_select .notion-pill {
  font-size: 1em;
  padding: 6px 10px;
}

/* ========================================
   FOOTER
   ======================================== */

.super-footer {
  display: block !important;
  width: 100% !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 40px 0 80px 0 !important;
  background: var(--bg) !important;
  box-shadow: none !important;
  border-top: 1px solid rgba(0, 0, 0, 0.15) !important;
}

@media (max-width: 1199.98px) {
  .super-footer {
    padding-left: calc(env(safe-area-inset-left) + 1.5rem) !important;
    padding-right: calc(env(safe-area-inset-right) + 1.5rem) !important;
  }
}

.super-footer.corners {
  display: block !important;
}

.super-footer.corners .super-footer__logo {
  margin-top: 0 !important;
}

.super-footer.corners .super-footer__logo span.super-footer__logo-text {
  font-size: 1.5rem !important;
  color: var(--contrast) !important;
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

.super-footer.corners .super-footer__links a.super-footer__link {
  text-transform: uppercase !important;
  color: var(--contrast) !important;
  font-family: "Satoshi Bold", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  padding: 0 !important;
  margin: 0 1.25rem 0 0 !important;
  display: flex !important;
  text-decoration: none !important;
}

.super-footer.corners .super-footer__links a.super-footer__link p {
  font-size: 0.9375rem !important;
}

.super-footer.corners .super-footer__links a.super-footer__link:hover p {
  color: rgba(var(--contrast), 0.5) !important;
}

.super-footer__content {
  grid-template-rows: auto !important;
}

.super-footer__links {
  margin-bottom: 0;
  position: relative !important;
  z-index: 10 !important;
  pointer-events: auto !important;
}

.super-footer__links a {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 10 !important;
}

@media (max-width: 767px) {
  .super-footer__content {
    grid-template-rows: auto !important;
  }
  
  .super-footer__links {
    margin-top: 1rem !important;
  }
}

.super-footer__title,
.super-footer__logo,
.super-footer .super-footer__logo,
.super-footer.corners .super-footer__logo,
.super-footer__logo span,
.super-footer__logo-text {
  display: none !important;
}

/* ========================================
   FIREFOX IOS DARK MODE OVERRIDE
   Aggressive fixes for text and menu
   ======================================== */

body,
body *,
.super-content,
.super-content *,
.notion-page,
.notion-page *,
.notion-text,
.notion-text *,
.notion-semantic-string,
.notion-column .notion-text,
h1, h2, h3, h4, h5, h6, p, span, div, a, li, td, th {
  color: #070200 !important;
}

.super-navbar__mobile-menu,
.super-navbar__dropdown,
.super-navbar__menu,
.super-navbar__menu-wrapper.active .super-navbar__menu,
.super-navbar__menu-item-list {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
}

.super-navbar__mobile-menu *,
.super-navbar__dropdown *,
.super-navbar__menu *,
.super-navbar__menu-item-list *,
.super-navbar__menu-item-list a {
  color: #070200 !important;
  background: transparent !important;
}

/* ========================================
   UNIVERSAL LINK HOVER OVERRIDE
   Force gray hover on ALL link types
   ======================================== */

a:hover,
a:hover *,
.notion-link:hover,
.link:hover,
p a:hover,
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover,
.notion-semantic-string a:hover,
.notion-text a:hover,
.notion-text__content a:hover,
.notion-collection-card a:hover,
.notion-collection-table__cell a:hover,
.notion-column-list a:hover,
.super-navbar__item:hover,
.super-navbar__item a:hover,
.super-footer__link:hover,
.super-footer__link:hover p {
  color: rgba(7, 2, 0, 0.5) !important;
}

.notion-text .notion-text__content .notion-semantic-string strong a.link:hover {
  background: var(--bg) !important;
  color: var(--contrast) !important;
}