/* Globals */
body {
	background-color: var(--wp--preset--color--custom-primary-darkest);
	background-image: linear-gradient(rgba(25, 66, 67, 0.25), rgba(25, 66, 67, 0.75)), url('https://canada.wordcamp.org/2026/files/2026/06/vancouver-site-bg.jpg');
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
	position: relative;
}

/* Main Spacing */
main:has(> .wp-block-post-content > .wide-group:last-child) + footer {
	margin-top: calc(var(--wp--preset--spacing--40) * -1);
}

main

/* Site Title */
.wp-block-site-title a:hover {
	color: var(--wp--preset--color--custom-highlight);
}

.site-title a {
	text-decoration: none;
}

/* Navigation */
.wp-block-navigation .wp-block-navigation-link a:hover {
	color: var(--wp--preset--color--custom-highlight);
	text-decoration: none;
}

/* Submenu Navigation */
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
	overflow: hidden !important;
	min-width: 225px !important;
	background: linear-gradient(135deg,rgb(9,40,42) 29%,rgb(28,104,105) 100%);
	border-radius: 7px;
	border: 1px solid var(--wp--preset--color--custom-white-pale);
	box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.7);
	color: white;
}

ul.wp-block-navigation-submenu a {
	color: white;
}

ul.wp-block-navigation-submenu a:hover {
	background-color: rgba(0, 0, 0, 0.15);
}

/* Core Heading */
.wp-block-heading {
	margin-top: var(--wp--preset--spacing--30);
}

.wp-block-heading + .wp-block-heading {
	margin-top: var(--wp--preset--spacing--10);
}

/* Core Button */
.wp-block-button .wp-block-button__link:hover {
	background-color: var(--wp--preset--color--custom-hover);
	color: var(--wp--preset--color--custom-white);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
	background-color: var(--wp--preset--color--custom-hover) !important;
	border-color: var(--wp--preset--color--custom-hover) !important;
}

/* Group Classes */
.wide-group {
	padding-top: var(--wp--preset--spacing--40);
	padding-bottom: var(--wp--preset--spacing--40);
	margin-top: 0;
}

.wide-group + .wide-group {
	margin-top: 0;
}

.wide-group.wide-group--dark:not(.wide-group--dividers) + .wide-group.wide-group--dark:not(.wide-group--dividers),
.wide-group.wide-group--image + .wide-group.wide-group--image {
	padding-top: 0 !important;
}

.wide-group + :not(.wide-group) {
	margin-top: var(--wp--preset--spacing--40);
}

.wide-group--image {
	background-color: var(--wp--preset--color--custom-black);
	background-size: cover;
	background-position: center;
}

.wide-group--fadein {
	background: linear-gradient(to bottom, transparent 0, var(--wp--preset--color--custom-primary-darkest) 800px);
}

/* Hero Group */
.wide-group--hero .wp-block-heading {
	font-weight: 800;
	line-height: clamp(3.5rem, 5vw + 2rem, 7rem) !important;
	letter-spacing: clamp(-7px, -0.5vw - 1px, -2px) !important;
}

/* Card Grids */
.card-grid {
	display: grid !important;
}

.card-grid--two {
	grid-template-columns: repeat(2, 1fr);
}

.card-grid--6040 {
	grid-template-columns: 60% 40%;
}

.card-grid--4060 {
	grid-template-columns: 40% 60%;
}

.card-grid--three {
	grid-template-columns: repeat(3, 1fr);
}

.card-grid--four {
	grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1152px) {
	.card-grid--blog {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 896px) {
	.card-grid--four,
			    .card-grid--6040,
			    .card-grid--4060 {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 768px) {
	.card-grid--three,
			    .card-grid--blog {
		grid-template-columns: 1fr;
	}
	
	.card-grid--blog .wp-block-post-featured-image {
		max-width: 240px !important;
		height: auto !important;
		margin-left: 0 !important;
		margin-right: auto !important;
	}
}

@media (max-width: 640px) {
	.card-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.card-grid--mobile-2 {
		grid-template-columns: repeat(2, 1fr);
	}
}

.card-grid__item:hover {
	border-color: var(--wp--preset--color--custom-highlight) !important;
}

.card-grid__item--profile figure, .card-grid__item--profile img {
	width: 100% !important;
	height: auto !important;
	border-radius: 3px;
}

/* Comments */
.comment-form-comment textarea {
	background-color: var(--wp--preset--color--custom-white-light);
	color: var(--wp--preset--color--custom-white);
	border: 1px solid var(--wp--preset--color--custom-white-pale);
}

/* Footer */
footer.wp-block-template-part {
	margin-top: 0;
}

/* Tickets Shortcode */
body.admin-bar #tix {
	padding-top: 0;
}

.tix-notice {
	background: var(--wp--preset--color--custom-white-light) !important;
	border-radius: 4px !important;
	border: 1px solid var(--wp--preset--color--custom-highlight) !important;
	color: var(--wp--preset--color--base-2) !important;
	padding: var(--wp--preset--spacing--20) !important;
}

.tix_tickets_table {
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
}

/* .tix_tickets_table thead th,
.tix_tickets_table tbody .tix-column-description,
.tix_tickets_table tbody .tix-column-price,
.tix_tickets_table tbody .tix-column-remaining,
.tix_tickets_table tbody .tix-column-quantity,
.tix_tickets_table tbody .tix-row-total td { */
.tix_tickets_table:not(.tix-attendee-form) thead th,
.tix_tickets_table:not(.tix-attendee-form) tbody th,
.tix_tickets_table:not(.tix-attendee-form) tbody td {
	font-weight: 500;
	text-align: left;
	padding: min(1.15rem, 1.5vw);
	background-color: var(--wp--preset--color--custom-white-light);
}

.tix_tickets_table:not(.tix-attendee-form) thead th {
	background-color: var(--wp--preset--color--custom-primary-darkest);
	border-bottom: 1px solid var(--wp--preset--color--custom-primary-dark);
}

.tix_tickets_table:not(.tix-attendee-form) .tix-row-coupon td {
	text-align: left;
	padding-top: min(1.15rem, 1.5vw);
	padding-bottom: min(1.15rem, 1.5vw);
	background-color: none;
}

.tix-js input,
.tix-submit input {
	font-family: var(--wp--preset--font-family--bricolage-grotesque);
	font-size: var(--wp--preset--font-size--small);
	font-style: normal;
	font-weight: 500;
	letter-spacing: inherit;
	line-height: inherit;
	padding-top: .75rem;
	padding-right: 1.25rem;
	padding-bottom: .75rem;
	padding-left: 1.25rem;
	background-color: var(--wp--preset--color--custom-highlight);
	border-radius: .33rem;
	border-color: var(--wp--preset--color--contrast);
	border-width: 0;
	color: var(--wp--preset--color--custom-black);
}

.tix-submit {
	margin-bottom: var(--wp--preset--spacing--40);
}

#tix .tix-submit .tix-checkout-button {
	text-transform: capitalize;
/* margin-top: 0; */
}

.tix-js input:hover,
.tix-submit input:hover {
	background-color: var(--wp--preset--color--custom-hover);
	color: var(--wp--preset--color--custom-white);
}

#tix-registration-information {
	margin-bottom: var(--wp--preset--spacing--20);
}

#tix_checkout_form .tix-attendee-form {
	margin-top: var(--wp--preset--spacing--50);
}

#tix_checkout_form .tix-attendee-form:first-of-type {
	margin-top: 0 !important;
}

.tix-attendee-form tbody tr:first-child th {
	font-size: var(--wp--preset--font-size--x-large);
	font-style: normal;
	font-weight: 500;
	padding-bottom: var(--wp--preset--spacing--20);
}

.tix-attendee-form .unknown-attendee td {
	padding-bottom: var(--wp--preset--spacing--20);
}

.tix-ticket-form td.tix-left,
.tix-private-form td.tix-left,
.tix-attendee-form td.tix-left,
.tix-receipt-form td.tix-left,
.tix-ticket-form td.tix-right,
.tix-private-form td.tix-right,
.tix-attendee-form td.tix-right,
.tix-receipt-form td.tix-right {
	padding-top: var(--wp--preset--spacing--20) !important;
	padding-bottom: var(--wp--preset--spacing--20) !important;
	border-top: 1px solid var(--wp--preset--color--custom-white-pale) !important;
}

.tix-ticket-form td.tix-left,
.tix-private-form td.tix-left,
.tix-attendee-form td.tix-left,
.tix-receipt-form td.tix-left {
	width: 60% !important;
	padding-right: 5% !important;
}

.tix-ticket-form td.tix-right,
.tix-private-form td.tix-right,
.tix-attendee-form td.tix-right,
.tix-receipt-form td.tix-right {
	width: 30% !important;
}

td.tix-right input {
	color: var(--wp--preset--color--custom-white);
	background-color: var(--wp--preset--color--custom-white-light) !important;
	border: 1px solid var(--wp--preset--color--custom-white-pale) !important;
}

.tix-payment-method .tix-payment-tab {
	color: var(--wp--preset--color--custom-white);
	border-bottom: 1px solid var(--wp--preset--color--custom-white-pale);
}

.tix-payment-method .tix-payment-tab.tix-tab-selected {
	border-bottom: 5px solid var(--wp--preset--color--custom-highlight);
}

.tix-payment-method-container fieldset {
	border: none;
	padding-top: 0;
	padding-bottom: 0;
}

#tix .tix-submit .tix-alternate-payment-option label {
	color: var(--wp--preset--color--custom-white);
}

#tix .tix-submit .tix-payment-method .tix-checkout-button {
	margin-top: var(--wp--preset--spacing--20) !important;
}