/* ===== GENERAL PAGE STYLES ===== */ html { background: radial-gradient(ellipse at bottom, #1f252e, #111827); background-attachment: fixed; font-family: 'IBM Plex Sans', sans-serif; color: white; word-break: break-word; } /* Override browser default to achieve edge-to-edge footer translucency effect */ body { margin: 0; padding: 0; } a { transition: 0.2s; text-decoration: none; } .mono { font-family: 'IBM Plex Mono', monospace; font-weight: 500; } /* ===== TEXT STYLES ===== */ h1 { font-size: 58px; font-family: 'IBM Plex Sans', sans-serif; } h1.logo { font-size: 32px; grid-area: logo; } h2 { font-size: 50px; font-family: 'IBM Plex Sans', sans-serif; } p, li { font-size: 24px; line-height: 1.6em; } span.purple_accent { color: #7e57c2; } /* ===== COMMON CSS GRID LAYOUT ===== */ div.header_grid, div.body_grid, div.footer_grid { max-width: 1920px; margin-left: auto; margin-right: auto; display: grid; grid-template-columns: 1fr 1fr; column-gap: 6em; padding-left: 60px; padding-right: 60px; padding-top: 20px; padding-bottom: 40px; transition-property: max-width; transition: 300ms; } /* ===== CSS HEADER GRID LAYOUT ===== */ div.header_grid { padding-bottom: 0px; grid-template-areas: 'logo logo'; } div.header_legal { max-width: 1080px; transition-property: max-width; transition: 300ms; } div.header_grid a { color: white; } div.header_grid a:hover { color: #7e57c2; } /* ===== CSS BODY GRID LAYOUT ===== */ div.body_grid { grid-template-areas: 'hero_copy hero_image' 'server_image server_copy' 'keyserver_company keyserver_company' 'keyserver_copy read_the_docs'; } div.hero_copy { grid-area: hero_copy; align-self: center; } div.hero_image { grid-area: hero_image; object-fit: scale-down; align-self: center; } div.server_image { grid-area: server_image; object-fit: scale-down; align-self: center; } div.server_copy { grid-area: server_copy; align-self: center; } div.keyserver_company { grid-area: keyserver_company; text-align: center; padding-top: 80px; } div.read_the_docs { grid-area: read_the_docs; align-self: center; padding-bottom: 40px; } /* ===== CSS FOOTER GRID LAYOUT ===== */ div.footer_grid { grid-template-areas: 'sitemap subscribe_updates'; } div.sitemap { grid-area: sitemap; } div.sitemap a { display: block; padding-bottom: 4px; color: #8a8f98; width: max-content; } div.sitemap > a:hover { color: white; } div.footer_logo a { font-size: 24px; font-weight: 500; color: white; padding-bottom: 8px; } div.footer_logo a:hover { color: #7e57c2; } div.subscribe_updates { grid-area: subscribe_updates; align-self: center; } /* ===== LEGAL PAGE STYLING ===== */ div.legal_container { max-width: 1080px; margin-left: auto; margin-right: auto; padding-left: 60px; padding-right: 60px; } div.legal_container h1 { font-size: 42px; } div.legal_container h2 { font-size: 38px; } div.legal_container p, li { font-size: 20px; } div.legal_container a { color: #7e57c2; } div.legal_container a:hover { color: #8c69c9; } /* ===== VISUAL EFFECTS ===== */ div.footer_blur { background-color: rgba(255, 255, 255, 0.125); backdrop-filter: blur(3px); } /* ===== LAYOUT HACKS ===== */ div.body_grid > div + .starting_section { padding-top: 80px; } .section { padding-top: 80px; } /* ===== MEDIUM BREAKPOINT ===== */ @media (max-width: 1499px) { div.body_grid { padding-left: 60px; padding-right: 60px; } h1 { font-size: 42px; } h2 { font-size: 38px; } p, li { font-size: 20px; } /* ===== LEGAL PAGE STYLING ===== */ div.legal_container h1 { font-size: 28px; } div.legal_container h2 { font-size: 24px; } div.legal_container p, li { font-size: 16px; } } /* ===== SMALLEST BREAKPOINT ===== */ @media (max-width: 1099px) { /* ===== TEXT STYLES ===== */ h1 { font-size: 28px; } h2 { font-size: 24px; } p, li { font-size: 16px; } /* ===== COMMON CSS GRID LAYOUT ===== */ div.body_grid, div.footer_grid, div.header_grid { padding-left: 3%; padding-right: 3%; grid-template-columns: minmax(auto, 540px); justify-content: center; } /* ===== CSS HEADER GRID LAYOUT ===== */ div.header_grid { grid-template-areas: 'logo'; } /* ===== CSS BODY GRID LAYOUT ===== */ div.body_grid { grid-template-areas: 'hero_image' 'hero_copy' 'server_image' 'server_copy' 'keyserver_company' 'keyserver_copy' 'read_the_docs'; } div.keyserver_company { text-align: left; padding-top: 60px; } .keyserver_company > h1 { font-size: 24px; } div.keyserver_copy { padding-bottom: 0; } div.read_the_docs { padding-top: 20px; padding-bottom: 0; } /* ===== CSS FOOTER GRID LAYOUT ===== */ div.footer_grid { grid-template-areas: 'subscribe_updates' 'sitemap'; } div.footer_container { padding-top: 5%; } div.sitemap { padding-top: 60px; grid-area: sitemap; } /* ===== LAYOUT HACKS ===== */ .section { padding-top: 20px; } /* ===== LEGAL PAGE STYLING ===== */ div.legal_container { max-width: 540px; padding-left: 3%; padding-right: 3%; } }