/*
Theme Name:  On Cue Calgary
Version:     2.0.0
Author:      On Cue Calgary
Description: On Cue Calgary's standalone theme.
*/

/* =============================================================================
   Base layer — what GeneratePress used to supply (feature 009, research D3).
   Ported from GP 3.6.1 main.min.css (element rules plus the three class rules
   our templates emit) and its inline Customizer CSS, so every page keeps
   today's look. Values match GP's computed output; the page background
   #f7f8f9, link blue #1e73be and GP's form/button greys are kept for parity
   (constitution V deviation, recorded in plan.md). Every other colour uses an
   --oncue-* token.
   ============================================================================= */

/* Reset */
blockquote, body, dd, dl, dt, fieldset, figure, h1, h2, h3, h4, h5, h6, hr, html,
iframe, legend, li, ol, p, pre, textarea, ul {
	margin: 0;
	padding: 0;
	border: 0;
}

html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	box-sizing: border-box;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

main {
	display: block;
}

progress {
	vertical-align: baseline;
}

button, input, optgroup, select, textarea {
	font-family: inherit;
	font-size: 100%;
	margin: 0;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/* Typography */
body, button, input, select, textarea {
	font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	font-weight: 400;
	text-transform: none;
	font-size: 17px;
	line-height: 1.5;
}

body {
	background-color: #f7f8f9;
	color: var(--oncue-text-body, #404040);
}

p {
	margin-bottom: 1.5em;
}

h1, h2, h3, h4, h5, h6 {
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
}

h1 { font-size: 42px; }
h2 { font-size: 35px; }
h3 { font-size: 29px; }
h4 { font-size: 24px; }
h5 { font-size: 20px; }

h1, h2, h3 {
	line-height: 1.2em;
	font-weight: 400;
	text-transform: none;
}

h1, h2, h3, h4, h5, h6 {
	margin-bottom: 20px;
}

pre {
	background: rgba( 0, 0, 0, 0.05 );
	font-family: inherit;
	font-size: inherit;
	line-height: normal;
	margin-bottom: 1.5em;
	padding: 20px;
	overflow: auto;
	max-width: 100%;
}

blockquote {
	border-left: 5px solid rgba( 0, 0, 0, 0.05 );
	padding: 20px;
	font-size: 1.2em;
	font-style: italic;
	margin: 0 0 1.5em;
	position: relative;
}

blockquote p:last-child {
	margin: 0;
}

table, td, th {
	border: 1px solid rgba( 0, 0, 0, 0.1 );
}

table {
	border-collapse: separate;
	border-spacing: 0;
	border-width: 1px 0 0 1px;
	margin: 0 0 1.5em;
	width: 100%;
}

td, th {
	padding: 8px;
	border-width: 0 1px 1px 0;
}

th {
	font-weight: 700;
}

hr {
	background-color: rgba( 0, 0, 0, 0.1 );
	border: 0;
	height: 1px;
	margin-bottom: 40px;
	margin-top: 40px;
}

fieldset {
	padding: 0;
	border: 0;
	min-width: inherit;
}

fieldset legend {
	padding: 0;
	margin-bottom: 1.5em;
}

ol, ul {
	margin: 0 0 1.5em 3em;
}

ul { list-style: disc; }
ol { list-style: decimal; }

li > ol,
li > ul {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt { font-weight: 700; }
dd { margin: 0 1.5em 1.5em; }
b, strong { font-weight: 700; }
cite, dfn, em, i { font-style: italic; }
address { margin: 0 0 1.5em; }

code, kbd, tt, var {
	font: 15px Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr, acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

ins, mark { text-decoration: none; }

sub, sup {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup { bottom: 1ex; }
sub { top: 0.5ex; }
small { font-size: 75%; }
big { font-size: 125%; }

/* Media */
img {
	height: auto;
	max-width: 100%;
}

embed, iframe, object {
	max-width: 100%;
}

/* Links */
a {
	color: #1e73be;
	text-decoration: underline;
}

a:hover,
a:focus,
a:active {
	color: var(--oncue-text-body, #404040);
}

a, button, input {
	transition: color 0.1s ease-in-out, background-color 0.1s ease-in-out;
}

/* Forms and buttons */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	background: #55555e;
	color: #fff;
	border: 1px solid transparent;
	cursor: pointer;
	-webkit-appearance: button;
	padding: 10px 20px;
}

a.button,
a.wp-block-button__link:not(.has-background) {
	color: #fff;
	background-color: #55555e;
}

.button,
.wp-block-button .wp-block-button__link {
	padding: 10px 20px;
	display: inline-block;
}

.wp-block-button .wp-block-button__link {
	font-size: inherit;
	line-height: inherit;
}

a.button,
.wp-block-button__link {
	text-decoration: none;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
a.button:hover,
a.button:focus,
a.wp-block-button__link:not(.has-background):active,
a.wp-block-button__link:not(.has-background):focus,
a.wp-block-button__link:not(.has-background):hover {
	color: #fff;
	background-color: #3f4047;
}

input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
select,
textarea {
	border: 1px solid #f0f0f0;
	border-radius: 0;
	padding: 10px 15px;
	max-width: 100%;
	color: var(--oncue-text-body, #404040);
	background-color: #f7f8f9;
}

input[type="email"]:focus,
input[type="number"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="text"]:focus,
input[type="url"]:focus,
select:focus,
textarea:focus {
	border-color: #b2b2be;
}

textarea {
	width: 100%;
}

/* Layout wrapper (#content.site-content in header.php) */
.site-content {
	display: flex;
	word-wrap: break-word;
}

#primary[tabindex="-1"]:focus {
	outline: 0;
}

.wp-block-group__inner-container {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

/* Accessibility */
.screen-reader-text {
	border: 0;
	clip: rect( 1px, 1px, 1px, 1px );
	clip-path: inset( 50% );
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

@media ( max-width: 768px ) {
	.site-content {
		flex-direction: column;
	}

	a, body, button, input, select, textarea {
		transition: all 0s ease-in-out;
	}
}

/* =============================================================================
   Site footer
   ============================================================================= */

:root {
	--contrast: #404040;
}

/* #5 — footer text colour: GP sets base-3 (white) background; override the
   oncue-text body colour so footer text is readable */
.site-footer {
	color: var(--contrast);
}

.site-footer a {
	color: var(--contrast);
	text-decoration: none;
}

.site-footer a:hover {
	color: var(--oncue-crimson, #c41e3a);
}
