The Celestia theme

Version 1.2.2 • Author: Razik Ikhlef

Files

Celestia is a modern, polished Beamer theme designed for professional and visually appealing presentations. It ships with 22 color palettes, 9 frame title styles, 11 footer styles, 10 block styles, 4 code styles and 12 preset styles that tie everything together into a cohesive look.

Getting started

\documentclass{beamer}
\usetheme{Celestia}

\title{My presentation}
\author{Author name}
\date{\today}

\begin{document}
\maketitle
\end{document}

Language

The language option sets the presentation language, which is automatically passed to the babel package. Default: english

\usetheme[language=french]{Celestia}

Preset styles

The style option

Applies a preset style that automatically configures several settings (palette, frametitle, footerstyle, block) for a consistent look and feel. Twelve styles are available.

minimal Palette sapphire, frametitle plain, footerstyle minimalist, block soft.
signature Palette petrol, frametitle cosmic, footerstyle cosmic, block fullbar.
studio Palette oxford, frametitle elegant, footerstyle info, block sober, emphasis accent.
academic Palette horizon, frametitle elegant, footerstyle classic, block native, titlealign center.
modern Palette nordic, frametitle subtle, footerstyle info, block sober.
design Palette imperial, frametitle clean, footerstyle badge, block bar.
executive Palette palatial, frametitle leftbar, footerstyle fullbar, block fullbar.
sober Palette terracotta, frametitle gradient, footerstyle info, block sober.
simple Palette steel, frametitle plain, footerstyle minimalist, block noback.
editorial Palette manuscript, frametitle line, footerstyle ruled, block sober.
lumiere Palette lumiere, frametitle plainrule, footerstyle framed, block soft.
chalk Palette chalk, frametitle subtle, footerstyle boxedruled, block bar, barblockopacity 0.15.
\usetheme[style=academic]{Celestia}

Note: any setting defined by a preset style can be overridden by explicitly passing another option.

\usetheme[style=modern, palette=copper]{Celestia}

Color palettes

Built-in palettes

Celestia ships with 22 carefully crafted palettes. Each one automatically defines six colors: primary (main), accent, standard block (blockcolor), example (examplecolor), alert (alertcolor), and background (background).

The palette option

Default: nordic

Available palettes

\usetheme[palette=petrol]{Celestia}

Note: the obsidian, midnight, dusk and velours palettes use a dark background. They work especially well for presentations in dimly lit rooms.

Custom palette

The custompalette option

Lets you define a fully custom palette by specifying six hex color codes (without the #) in order: primary, accent, standard block, example block, alert block, background.

\usetheme[
    custompalette={2C3E50,E74C3C,3498DB,27AE60,E67E22,ECF0F1}
]{Celestia}

Individual colors

For finer-grained control, you can set each color independently (hex codes without the #).

\usetheme[
    maincolor=045549,
    accentcolor=E63946,
    backgroundcolor=FAFAFA,
    blockcolor=1A3B52
]{Celestia}

The unicolor option

Enables monochrome mode, where the emphasis color is used across all elements (blocks, list items, decorations).

\usetheme[unicolor]{Celestia}

Emphasis & decoration

These two options control the colors used for emphasis elements (headings, list items) and decorations (rules, ornaments), respectively.

The emphasis option

Default: main

The decoration option

Default: follows the emphasis value

Allows you to independently choose the color for decorative elements (main or accent).

\usetheme[emphasis=accent, decoration=main]{Celestia}

Fonts

Default fonts

Custom fonts

Option Effect
serifface Serif font (default: literata).
seriffaceoptions fontspec options for the serif font.
sansface Sans-serif font (default: inter). With LuaLaTeX/XeLaTeX, if left empty the theme automatically applies engine-appropriate scaling and weight options.
sansfaceoptions fontspec options for the sans-serif font.
monoface Monospace font for code (default: plex-mono).
monofaceoptions fontspec options for the mono font.
\usetheme[
    serifface=EB Garamond,
    seriffaceoptions={Scale=1.1},
    sansface=Montserrat,
    monoface=Fira Code
]{Celestia}

XeLaTeX vs LuaLaTeX: both use fontspec, but their font discovery differs. LuaLaTeX maintains its own database (luaotfload) and reliably finds fonts by family name (e.g. Source Sans 3). XeLaTeX relies on system libraries (fontconfig / Core Text), which may not recognize the same name. If a font is not found, the theme falls back to the TeX Gyre family and emits a warning. To avoid this on XeLaTeX, use the exact file name (e.g. sansface=SourceSans3-Regular.otf) or prefer LuaLaTeX.

The semibold option

Enables semibold mode (weight 600) for the bold series of the serif and sans-serif fonts. With pdflatex, this uses \DeclareFontSeriesDefault. With LuaLaTeX/XeLaTeX, it automatically adds BoldFeatures={Weight=600} to the fontspec options.

Default: true

\usetheme[semibold=false]{Celestia}

The light option

Controls whether the sans-serif font uses lighter weights.

Default: true

\usetheme[light=false]{Celestia}

Math font

The mathface option

Selects a math font from a set of recognized presets. Each preset automatically loads the appropriate package with sensible defaults.

Default: iwona

Available presets:

\usetheme[mathface=pagella]{Celestia}

The mathfaceoptions option

Passes additional options to the selected math font package.

\usetheme[mathface=pagella, mathfaceoptions={Scale=1.05}]{Celestia}

The allserif option

Uses the main serif font for math typesetting.

\usetheme[allserif]{Celestia}

Layout

Margins

The margin option

Sets the content margin on slides.

Default: 2em

\usetheme[margin=1.5em]{Celestia}

Frame title style

The frametitle option

Controls how frame titles are rendered.

Default: subtle

Available styles:

\usetheme[frametitle=elegant]{Celestia}

Every style supports subtitles via \framesubtitle{...}.

Title page

The titlealign option

Sets the content alignment on the title page.

Default: left

Accepted values: left, center, right

\usetheme[titlealign=center]{Celestia}

The titlebackground option

Specifies a background image (rendered at reduced opacity) for the title page.

\usetheme[titlebackground=image.jpg]{Celestia}

Typography

Heading style

Option Default Values
headstyle sffamily rmfamily (serif), sffamily (sans-serif)
headshape normal sc (small caps), it (italic), normal
headweight bfseries bfseries (bold), mdseries (medium)
blocktitleweight bfseries bfseries (bold), mdseries (medium)

Heading sizes

Controls font sizes for various heading levels. In addition to the standard LaTeX sizes, Celestia defines intermediate sizes for finer control.

Option Default
titlesize LargeLARGE
frametitlesize normalsize
sectiontitlesize LARGE
subtitlesize Large
footertextsize tiny
\usetheme[
    titlesize=Huge,
    frametitlesize=Large,
    sectiontitlesize=huge
]{Celestia}

Intermediate sizes

Celestia adds an intermediate size between each consecutive pair of standard LaTeX sizes: tinyscriptsize, scriptsizefootnotesize, footnotesizesmall, smallnormalsize, normalsizelarge, largeLarge, LargeLARGE, LARGEhuge, hugeHuge.

Table of contents

The compacttoc option

Reduces the vertical spacing between entries in the table of contents.

\usetheme[compacttoc]{Celestia}

The twocoltoc option

Automatically splits the sections into two balanced columns.

\usetheme[twocoltoc]{Celestia}

The \twocolumntoc command

Gives you manual control over the two-column split by specifying section ranges.

\twocolumntoc[1][5][10]

This places sections 1–4 in the left column and sections 5–10 in the right column.

Blocks

Block types

Three standard Beamer block types are available, each tied to a semantic color:

\begin{block}{Block title}
    Standard block content (blockcolor)
\end{block}

\begin{exampleblock}{Example}
    Example block content (examplecolor)
\end{exampleblock}

\begin{alertblock}{Warning}
    Alert block content (alertcolor)
\end{alertblock}

Block style

The block option

Sets the visual style for blocks.

Default: sober

tcolorbox styles

Native Beamer styles

\usetheme[block=sober]{Celestia}

Block opacity options

Controls the intensity of the colored backgrounds for certain block styles (decimal value between 0 and 1):

Option Default
shadedblockopacity 0.30
soberblockopacity 0.18
softblockopacity 0.18
barblockopacity 0.05
\usetheme[block=sober, soberblockopacity=0.25]{Celestia}

Special pages

Standout pages

The standout frame option turns a slide into a full-screen highlight page with an inverted color scheme. This feature requires enabling the standout option at the theme level.

\usetheme[standout]{Celestia}

\begin{frame}[standout]
    Key takeaway

    \vspace{1em}
    \large --- Quote
\end{frame}

Section pages

The sectionpage and sectionnumber options

Controls the automatic section title pages that appear at the beginning of each section, featuring the section title with a decorative ornament.

Defaults: sectionpage=true, sectionnumber=false

\usetheme[sectionpage=false]{Celestia}
\usetheme[sectionnumber]{Celestia}

To disable section pages manually within the document:

\AtBeginSection{}

Source code

Code handler

The codehandler option

Selects the syntax highlighting engine.

Default: listings

\usetheme[codehandler=minted]{Celestia}

When language=french is set, listing captions are automatically relabeled as “Programme.”

Code block style

The codestyle option

Sets the visual style for code blocks.

Default: bar

\usetheme[codestyle=macos]{Celestia}

Code framing

The codebox and nocodeframe options

Controls whether code blocks are wrapped in a tcolorbox. Default: codebox=true

\usetheme[codebox=false]{Celestia}

Usage with listings

\begin{lstlisting}[style=python]
def fibonacci(n):
    if n <= 1:
        return n
    return fibonacci(n-1) + fibonacci(n-2)
\end{lstlisting}

A ready-to-use python style is included with keyword and built-in function highlighting.

Text formatting

Special commands

The boldurl option

Renders URLs in bold within hyperlinks.

\usetheme[boldurl]{Celestia}

Math environments

Celestia provides a set of predefined math environments, each tied to a semantic color. When language=french is set, their names are automatically translated.

Available environments

Block environments (block color):

Example environments (example color):

Alert environments (alert color):

Other:

Syntax with tcolorbox blocks (default)

With all tcolorbox-based block styles (fullbar, bar, sober, soft, shaded, noback, plain), environments accept key-value options in brackets. Use title for a subtitle and label for cross-referencing:

\begin{theorem}[title=Pythagorean theorem, label=th:pyth]
    In a right triangle, $a^2 + b^2 = c^2$.
\end{theorem}

Syntax with native blocks

With block=native, block=native-shadow or block=native-default, the environments use the standard Beamer syntax with the title in braces:

\begin{theorem}{Pythagorean theorem}
    In a right triangle, $a^2 + b^2 = c^2$.
\end{theorem}

Important: the two syntaxes are not interchangeable. Using \begin{theorem}{Title} with a tcolorbox style or [title=...] with a native style will cause a compilation error.

Option reference

Boolean options

Option Default
allserif false
semibold true
light true
unicolor false
standout false
compacttoc false
twocoltoc false
codebox true
nocodeframe false
shownavigation false
boldurl false
sectionpage true
sectionnumber false
progressbar false

Key-value options

Option Default
palette nordic
style (none)
block sober
footerstyle info
codestyle bar
frametitle subtle
titlealign left
emphasis main
decoration (follows emphasis)
headstyle sffamily
headshape normal
headweight bfseries
blocktitleweight bfseries
titlesize LargeLARGE
frametitlesize normalsize
sectiontitlesize LARGE
subtitlesize Large
footertextsize tiny
margin 2em
serifface literata
sansface inter
monoface plex-mono
mathface iwona
codehandler listings
language english
shadedblockopacity 0.30
soberblockopacity 0.18
softblockopacity 0.18
barblockopacity 0.05