Files

224 lines
4.7 KiB
CSS
Raw Permalink Normal View History

/* GULLBERG sanatorium - the skin over portal's own stylesheet
(site.yaml `stylesheet`, loaded after main.css, so these rules win).
One idea: a sanatorium from the thirties. Lime-washed plaster, pine
green for what is ruled and pressed, brass for what leads somewhere,
Futura capitals spaced like the wordmark for what is asked, and a
calm serif for what is said. Both colour schemes are drawn; the page
follows the reader's. */
@import url('https://fonts.googleapis.com/css2?family=Spectral:ital,wght@0,400;0,500;1,400&display=swap');
@font-face {
font-family: "FuturaNow";
font-weight: 500;
font-display: swap;
src: url("/site/fonts/futura-medium.ttf") format("truetype");
}
/* ---- colour: light, then dark ---------------------------------- */
:root {
--pine: #2f4a3a;
--accent: #8a6420;
--accent-soft: rgba(138, 100, 32, 0.12);
--paper: #f3f1ea;
--ink: #1d2420;
--ink-dim: #5c625c;
--line: #d9d5c8;
--card-bg: #fbfaf6;
--card-bg-opaque: #fbfaf6;
--card-shadow: rgba(30, 45, 35, 0.08);
--field: #ffffff;
--hero-glow: rgba(243, 241, 234, 0.85);
--error: #9b2c1f;
--heading: "FuturaNow", "Futura", "Century Gothic", sans-serif;
--sans: "Spectral", Georgia, "Times New Roman", serif;
--radius: 0.25rem;
--measure: 46rem;
color-scheme: light;
}
@media (prefers-color-scheme: dark) {
:root {
/* Pine is too dark to read as text on a dark ground; brass is the
accent there, and pine stays for what is filled. */
--pine: #3d6150;
--accent: #d6b46a;
--accent-soft: rgba(214, 180, 106, 0.16);
--paper: #121614;
--ink: #ece8de;
--ink-dim: #a9aba3;
--line: #2c3430;
--card-bg: #1a201d;
--card-bg-opaque: #1a201d;
--card-shadow: rgba(0, 0, 0, 0.45);
--field: #121614;
--hero-glow: rgba(18, 22, 20, 0.85);
--error: #f08c7c;
color-scheme: dark;
}
}
/* ---- type ------------------------------------------------------- */
body {
font-family: var(--sans);
font-size: 1.06rem;
line-height: 1.55;
}
h1, h2, h3 {
font-family: var(--heading);
font-weight: 500;
line-height: 1.15;
}
/* What is asked is set in Futura, spaced a touch, in its own case. */
.hero-copy h1,
.alt-card h2 {
letter-spacing: 0.02em;
}
/* ---- the top ---------------------------------------------------- */
.hero {
align-items: stretch;
text-align: left;
}
.hero:not(.hero-slides),
.hero-bar,
.hero-slides .hero-copy {
width: 100%;
max-width: var(--measure);
margin-inline: auto;
box-sizing: border-box;
}
.wordmark {
opacity: 1;
}
.session {
font-family: var(--heading);
font-size: 0.82rem;
letter-spacing: 0.06em;
}
/* Who is here, on the wordmark's line at the right edge. */
.hero-top {
justify-content: space-between;
}
.hero-top .session {
position: static;
transform: none;
}
.hero-copy {
display: flex;
flex-direction: column;
align-items: flex-start;
text-align: left;
gap: 0.5rem;
}
.hero-copy h1 {
margin: 0.9rem 0 0;
font-size: clamp(1.5rem, 1.1rem + 1.8vw, 2.1rem);
}
.hero-copy p {
margin: 0;
max-width: 34rem;
font-size: 1.12rem;
color: var(--ink-dim);
}
/* ---- the cards -------------------------------------------------- */
.alternatives {
max-width: var(--measure);
gap: 1.4rem;
}
/* A card on the reading-room table: flat, a pine rule on its left. */
.alt-card {
background: var(--card-bg);
border: 0.06rem solid var(--line);
border-left: 0.3rem solid var(--pine);
border-radius: var(--radius);
box-shadow: 0 0.4rem 1.2rem var(--card-shadow);
padding: 1.6rem 1.8rem 1.7rem;
backdrop-filter: none;
}
.alt-card h2 {
font-size: 1.3rem;
margin: 0 0 0.45rem;
}
.feature h3,
.feature-name {
font-family: var(--heading);
letter-spacing: 0.04em;
}
.feature p a,
.alt-description a,
.hero-copy p a {
color: var(--accent);
border-bottom-color: var(--accent);
}
.alt-encouragement {
color: var(--ink-dim);
font-style: italic;
}
/* ---- forms ------------------------------------------------------ */
.field-label {
font-family: var(--heading);
font-size: 0.78em;
letter-spacing: 0.06em;
text-transform: uppercase;
color: var(--ink);
}
input,
textarea,
.select-option {
background: var(--field);
border-color: var(--line);
border-radius: 0.2em;
}
.select-option {
border-radius: 999rem;
}
.select-option.selected {
background: var(--pine);
border-color: var(--pine);
color: #f3f1ea;
}
.alt-submit {
font-family: var(--heading);
letter-spacing: 0.12em;
text-transform: uppercase;
background: var(--pine);
color: #f3f1ea;
border-radius: 0.2em;
}
/* ---- the foot --------------------------------------------------- */
.question-nav,
.down-the-tree-foot,
.question-responsible {
font-family: var(--heading);
letter-spacing: 0.04em;
}