@charset "UTF-8"; :root { --bg-back: #eee8f2; --bg-panel: #faf8fb; --bg-panel-alpha: hsla(270, 19%, 98%, 0.75); --text-main: #111111; --text-alt: hsl(0, 0%, 96%); --highlight: #ffa74d; --highlight-minor: #fb701a; --shadow: rgba(80, 80, 80, 0.5); } @media (prefers-color-scheme: dark) { :root { --bg-back: hsl(270, 29%, 28%); --bg-panel: hsl(273, 15%, 16%); --bg-panel-alpha: hsla(270, 14%, 16%, 0.75); --text-main: hsl(277, 38%, 89%); /* --shadow: rgba(20, 20, 20, 0.5); */ --shadow: rgba(5, 5, 5, 0.5); } a { color: hsl(208, 67%, 67%); } a:hover { color: hsl(214, 67%, 75%); } a:active, a:focus { color: hsl(214, 87%, 85%); } a:visited { color: hsl(264, 77%, 65%); } .invert-when-dark { filter: invert(100%); } } html, body { margin: 0; padding: 0; font-size: 100%; scroll-behavior: smooth; } body { background: var(--bg-back); color: var(--text-main); font-family: sans-serif; } h1, h2 { text-align: center; } /* A small tweak to things more responsive */ iframe, object, embed, img, table { max-width: 100%; } /* Turn the user's cursor into a hand when over things they can click */ button, summary { cursor: pointer; } /* ███████ ███████ ███████ ███████ ██████ ████████ ███████ ██ ██ ██ ██ ██ ██ ██ █████ █████ █████ █████ ██ ██ ███████ ██ ██ ██ ██ ██ ██ ██ ███████ ██ ██ ███████ ██████ ██ ███████ */ .fancy-browser-window { display: inline-block; /* background: radial-gradient(0.25em at top 0.25em right 0.25em, red 0%, red 99%, transparent 100%), */ --button-size: 0.35em; --border-thin: 0.5em; --border-top: 1.25em; --button-spacing: 1em; --colour-z: hsl(0, 0%, 85%); --colour-a1: hsl(5, 80%, 60%); --colour-a2: hsl(7, 74%, 48%); /*hsl(6, 75%, 37%)*/ --colour-b1: hsl(53, 80%, 60%); --colour-b2: hsl(53, 73%, 48%); --colour-c1: hsl(114, 80%, 59%); --colour-c2: hsl(114, 73%, 48%); background: radial-gradient( var(--button-size) at top calc(var(--button-size) + var(--border-thin) / 2) left calc(0.5em + var(--button-size)), var(--colour-a1) 50%, var(--colour-a2) 100%, transparent 100% ), radial-gradient( var(--button-size) at top calc(var(--button-size) + var(--border-thin) / 2) left calc(0.5em + var(--button-size) + var(--button-spacing)), var(--colour-b1) 50%, var(--colour-b2) 100%, transparent 100% ), radial-gradient( var(--button-size) at top calc(var(--button-size) + var(--border-thin) / 2) left calc(0.5em + var(--button-size) + var(--button-spacing) * 2), var(--colour-c1) 50%, var(--colour-c2) 100%, transparent 100% ), var(--colour-z); border-radius: 0.25em; padding: var(--border-top) var(--border-thin) var(--border-thin) var(--border-thin); } .perspective { perspective: 50em; } .feature-tilted { margin: 2em; transform: rotateY(-10deg); /* box-shadow: 0 0 0.5em var(--shadow); */ transition: transform 0.25s; } .feature-tilted:hover { transform: rotateY(0deg) scale(1.1); } .spin-in { backface-visibility: visible; animation: 1.5s ease-out enter-spin; } @keyframes enter-spin { from { transform: translateX(30em) rotateY(180deg); } to { transform: translateX(0) rotateY(350deg); } } .panel { background: var(--bg-panel); border-bottom: 0.25em solid var(--highlight-minor); border-top: 0.25em solid var(--highlight-minor); box-shadow: inset 0 0 0.5em var(--shadow); } .panel-small { background: var(--bg-panel-alpha); box-shadow: 0 0.25em 0.5em var(--shadow); } .lift-from-page { position: relative; --amount-initial: 0.5em; --blur: 0.5em; border: 0.2em solid var(--highlight); border-radius: 0.25em; box-shadow: var(--amount-initial) var(--amount-initial) var(--blur) var(--shadow); transform: translate(0, 0); transition: transform 0.5s, box-shadow 0.5s; } .lift-from-page:hover { --amount: 0.5em; --shadow-amount: calc(var(--amount) + var(--amount-initial)); /* top: var(--amount-translate); left: var(--amount-translate); */ /* top: -0.5em; left: -0.5em; */ transform: translate(-0.5em, -0.5em); box-shadow: var(--shadow-amount) var(--shadow-amount) calc(var(--blur) * 2) var(--shadow); } .action-button { display: inline-block; padding: 0.35em 0.45em; border-radius: 0.25em; background: var(--highlight); color: var(--text-alt) !important; font-size: 1.25em; text-decoration: none; box-shadow: 0 0 0.5em var(--shadow); cursor: pointer; transition: box-shadow 0.25s, transform 0.25s; } .action-button:hover { box-shadow: 0 0.25em 0.65em var(--shadow); transform: translateY(-0.25em); } .action-button:active { box-shadow: 0 0 0.25em var(--shadow); transform: translateY(0.1em); } .action-button.major { background: var(--highlight-minor); } /* ██ █████ ██ ██ ██████ ██ ██ ████████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ███████ ████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ███████ ██ ██ ██ ██████ ██████ ██ */ .double { display: grid; grid-template-rows: auto; grid-template-columns: 1fr 1fr; grid-gap: 1em; } .double.lean-right { grid-template-columns: 5fr 6fr; } .double.lean-left { grid-template-columns: 6fr 5fr; } .double > img { max-width: 90%; } .centre-horizontal { align-self: center; } .centre-vertical { justify-self: center; } .centre { align-self: center; justify-self: center; } .centre-text { text-align: center; } .margin-wide { margin: 3em; } .margin-medium { margin: 2em; } .margin-vertical { margin: 2em 0 2em 0; } .margin-top { margin-top: 2em; } .margin-narrow { margin: 1em; } .padding-wide { padding: 3em; } .padding-wide-ntop { padding: 1em 3em 3em 3em; } .padding-medium { padding: 2em; } .padding-horizontal { padding: 0 2em 0 2em; } .list-thin { padding-left: 1em; } .logo { vertical-align: middle; } .logo.large { max-width: 2em; } .logo.medium { max-width: 1.5em; } .logo.small { max-width: 1em; } .feature-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(20em, 100%), 1fr)); grid-gap: 2em; margin: 4em 2em 4em 2em; } .feature { margin: 0; /* We add the spacing with grid-gap in feature-list*/ } .feature:not(.mini) { display: grid; grid: auto / 1fr 3fr; grid-gap: 0.5em; align-items: center; } .feature.vertical { grid: auto auto / auto; } .feature figcaption > strong { display: block; margin-bottom: 0.5em; } .display-items { display: flex; justify-content: center; flex-wrap: wrap; } /* .feature img { float: left; } */ /* .feature figcaption { flex: 1; } */ /* ███ ███ ██████ ██████ ██ ██ ███████ ████ ████ ██ ██ ██ ██ ██ ██ ██ ██ ████ ██ ██ ██ ██████ ██ ██ █████ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██████ ██████ ██ ███████ ███████ */ @media (max-width: 800px) { .double, .double.lean-left, .double.lean-right { grid-template-columns: auto !important; grid-template-rows: auto auto !important; } .feature-tilted { transform: rotateY(0); } }