/* Reset default margin/padding */ * { margin: 0; padding: 0; box-sizing: border-box; } html { /* Fonts */ font-family: system-ui, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; /* These are variables that can be used anywhere in the CSS Example of usage: background-color: var(--bg-light); In this example the background would be white as --bg-light is set to white here */ /* Accent colour*/ --accent: #195190; --accent-secondary: #14202e; /* Misc */ --transition: 0.2s ease-in-out; } /* * Remove text-shadow in selection highlight: * https://twitter.com/miketaylr/status/12228805301 * * Customize the background color to match your design. */ ::-moz-selection { background: #b3d4fc; text-shadow: none; } ::selection { background: #b3d4fc; text-shadow: none; } /* * A better looking default horizontal rule */ hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; } /* * Remove the gap between audio, canvas, iframes, * images, videos and the bottom of their containers: * https://github.com/h5bp/html5-boilerplate/issues/440 */ audio, canvas, iframe, img, svg, video { vertical-align: middle; } /* * Remove default fieldset styles. */ fieldset { border: 0; margin: 0; padding: 0; } /* * Allow only vertical resizing of textareas. */ textarea { resize: vertical; } /* ========================================================================== Author's custom styles ========================================================================== */ /* ========================================================================== Helper classes ========================================================================== */ /* * Hide visually and from screen readers */ .hidden, [hidden] { display: none !important; } /* * Hide only visually, but have it available for screen readers: * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility * * 1. For long content, line feeds are not interpreted as spaces and small width * causes content to wrap 1 word per line: * https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe */ .visually-hidden { border: 0; clip: rect(0, 0, 0, 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; white-space: nowrap; width: 1px; /* 1 */ } /* * Extends the .visually-hidden class to allow the element * to be focusable when navigated to via the keyboard: * https://www.drupal.org/node/897638 */ .visually-hidden.focusable:active, .visually-hidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; white-space: inherit; width: auto; } /* * Hide visually and from screen readers, but maintain layout */ .invisible { visibility: hidden; } /* * Clearfix: contain floats * * The use of `table` rather than `block` is only necessary if using * `::before` to contain the top-margins of child elements. */ .clearfix::before, .clearfix::after { content: ""; display: table; } .clearfix::after { clear: both; } /* ========================================================================== EXAMPLE Media Queries for Responsive Design. These examples override the primary ('mobile first') styles. Modify as content requires. ========================================================================== */ @media only screen and (min-width: 35em) { /* Style adjustments for viewports that meet the condition */ } @media print, (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 1.25dppx), (min-resolution: 120dpi) { /* Style adjustments for high resolution devices */ } /* ========================================================================== Print styles. Inlined to avoid the additional HTTP request: https://www.phpied.com/delay-loading-your-print-css/ ========================================================================== */ @media print { *, *::before, *::after { background: #fff !important; color: #000 !important; /* Black prints faster */ box-shadow: none !important; text-shadow: none !important; } a, a:visited { text-decoration: underline; } a[href]::after { content: " (" attr(href) ")"; } abbr[title]::after { content: " (" attr(title) ")"; } /* * Don't show links that are fragment identifiers, * or use the `javascript:` pseudo protocol */ a[href^="#"]::after, a[href^="javascript:"]::after { content: ""; } pre { white-space: pre-wrap !important; } pre, blockquote { border: 1px solid #999; page-break-inside: avoid; } tr, img { page-break-inside: avoid; } p, h2, h3 { orphans: 3; widows: 3; } h2, h3 { page-break-after: avoid; } } /* * Typography */ h1, h2 { font-family: var(--font-geist-mono); font-weight: bold; } h1 { font-size: 2em; margin-bottom: 1em; } h2 { margin-bottom: 0.5rem; } @media screen and (min-width: 480px) { h1 { font-size: 2.5em; } } p { margin-bottom: 1.5em; } /* Add margin to lists */ .text ul { margin-left: 1.5rem; } .animate-text { clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%); } /* Links */ a, [role="link"] { color: var(--accent); text-decoration: none; -webkit-text-decoration: none; } /* Underline links when hovered */ a:hover, [role="link"] { text-decoration: underline; -webkit-text-decoration: underline; } /* * Constrained container * This centeres elements horizontally and constrains the width so that elements are aligned (like a margin) */ .container { margin-left: auto; margin-right: auto; max-width: 1440px; padding-left: 20px; padding-right: 20px; position: relative; } /* Desktop */ @media (min-width: 920px) { .container { padding-left: 70px; padding-right: 70px; } } /* Centered container (centered verticially and horizontally on page) */ .centeredContainer { display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100vh; } /* * Misc styling */ .rounded { border-radius: 0.5rem; } .shadow { box-shadow: 0px 0px 24px -12px rgba(0, 0, 0, 0.5); -webkit-box-shadow: 0px 0px 24px -12px rgba(0, 0, 0, 0.5); transition: box-shadow var(--transition), -webkit-box-shadow var(--transition); } .mb { margin-bottom: 10em; }