GULLBERG sanatorium: første utkast, bygget av treneren
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
This commit is contained in:
45 files changed
+2306
No files matched your search
+215
@@ -0,0 +1,215 @@
|
||||
/* 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 like the wordmark: capitals, spaced. */
|
||||
.hero-copy h1,
|
||||
.alt-card h2 {
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.12em;
|
||||
}
|
||||
|
||||
/* ---- 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;
|
||||
}
|
||||
|
||||
.hero-copy {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: flex-start;
|
||||
text-align: left;
|
||||
gap: 0.5rem;
|
||||
}
|
||||
|
||||
.hero-copy h1 {
|
||||
margin: 0.4rem 0 0;
|
||||
font-size: clamp(1.5rem, 1rem + 2.2vw, 2.2rem);
|
||||
}
|
||||
|
||||
.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.15rem;
|
||||
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;
|
||||
}
|
||||
Reference in new issue
Block a user