.abjja-events,
.abjja-event-detail,
.abjja-event-calendar,
.abjja-event-submit,
.abjja-event-dashboard,
.abjja-event-widget {
	color: #17211b;
	margin: 0 auto;
	max-width: 1180px;
}

.abjja-events-header,
.abjja-event-hero,
.abjja-event-card-body,
.abjja-event-card-actions,
.abjja-event-actions,
.abjja-events-tools {
	align-items: center;
	display: flex;
	gap: 12px;
}

.abjja-events-header {
	justify-content: space-between;
	margin-bottom: 20px;
}

.abjja-events-header h2,
.abjja-event-hero h1,
.abjja-event-detail h2,
.abjja-event-calendar h2 {
	color: #17211b;
	line-height: 1.12;
	margin: 0;
}

.abjja-events-header h2 {
	font-size: 34px;
}

.abjja-events-tools a,
.abjja-events-tools button,
.abjja-event-actions a,
.abjja-event-actions button,
.abjja-event-card-actions a,
.abjja-event-card-actions button,
.abjja-primary-link,
.abjja-registration-panel button,
.abjja-organizer-card button,
.abjja-share-tools button,
.abjja-share-tools a,
.abjja-event-submit button,
.abjja-event-modal button[type="submit"] {
	background: #366548;
	border: 1px solid #366548;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	line-height: 1;
	padding: 10px 12px;
	text-decoration: none;
}

.abjja-events-tools a,
.abjja-events-tools button,
.abjja-event-card-actions button,
.abjja-share-tools button,
.abjja-share-tools a {
	background: #fff;
	color: #26372d;
}

.abjja-events-tools a:hover,
.abjja-events-tools a:focus,
.abjja-events-tools button:hover,
.abjja-events-tools button:focus,
.abjja-event-actions a:hover,
.abjja-event-actions a:focus,
.abjja-event-actions button:hover,
.abjja-event-actions button:focus,
.abjja-event-card-actions a:hover,
.abjja-event-card-actions a:focus,
.abjja-event-card-actions button:hover,
.abjja-event-card-actions button:focus,
.abjja-primary-link:hover,
.abjja-primary-link:focus,
.abjja-secondary-link:hover,
.abjja-secondary-link:focus,
.abjja-registration-panel button:hover,
.abjja-registration-panel button:focus,
.abjja-organizer-card button:hover,
.abjja-organizer-card button:focus,
.abjja-share-tools button:hover,
.abjja-share-tools button:focus,
.abjja-share-tools a:hover,
.abjja-share-tools a:focus,
.abjja-directions-widget button:hover,
.abjja-directions-widget button:focus {
	background: #284d36;
	border-color: #284d36;
	color: #fff;
	text-decoration: none;
}

.abjja-event-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 22px;
}

.abjja-event-filters button {
	background: #fff;
	border: 1px solid #cfdad3;
	border-radius: 999px;
	color: #223128;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	padding: 9px 14px;
}

.abjja-event-filters button.is-active {
	background: #366548;
	border-color: #366548;
	color: #fff;
}

.abjja-event-grid {
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
}

.abjja-event-card {
	background: #fff;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	box-shadow: 0 10px 28px rgba(20, 32, 26, 0.08);
	overflow: hidden;
}

.abjja-event-card-media {
	background: #edf1ef;
	display: block;
	min-height: 180px;
	position: relative;
}

.abjja-event-card-media img {
	aspect-ratio: 16 / 10;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.abjja-event-card-body {
	align-items: flex-start;
	padding: 16px;
}

.abjja-event-datebox {
	background: #eef5f0;
	border: 1px solid #cfddd4;
	border-radius: 8px;
	min-width: 58px;
	padding: 10px 8px;
	text-align: center;
}

.abjja-event-datebox strong {
	display: block;
	font-size: 24px;
	line-height: 1;
}

.abjja-event-datebox span {
	color: #52625a;
	font-size: 12px;
	font-weight: 800;
	text-transform: uppercase;
}

.abjja-event-card h3 {
	font-size: 19px;
	line-height: 1.25;
	margin: 0 0 8px;
}

.abjja-event-card h3 a {
	color: #17211b;
	text-decoration: none;
}

.abjja-event-card p {
	color: #52625a;
	font-size: 14px;
	margin: 0 0 6px;
}

.abjja-event-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	left: 12px;
	position: absolute;
	top: 12px;
}

.abjja-event-pills span {
	background: var(--event-color, #366548);
	border-radius: 999px;
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	padding: 6px 9px;
}

.abjja-event-hero {
	align-items: stretch;
	background: #f5f7f5;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	display: block;
	margin: 0 auto 18px;
	max-width: 1120px;
	overflow: hidden;
}

.abjja-event-hero > div {
	padding: 34px;
}

.abjja-event-hero h1 {
	font-size: 44px;
	margin: 10px 0 14px;
}

.abjja-event-hero figure {
	display: none;
}

.abjja-event-hero img {
	display: block;
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.abjja-event-hero .abjja-event-pills {
	left: auto;
	position: static;
	top: auto;
}

.abjja-event-layout {
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(0, 720px) 320px;
	justify-content: center;
	margin: 0 auto;
	max-width: 1120px;
}

.abjja-event-page-container {
	margin-left: auto;
	margin-right: auto;
	max-width: 1180px;
	padding-left: 24px;
	padding-right: 24px;
}

.abjja-event-page-section > .content-wrap {
	padding-bottom: 70px;
	padding-top: 56px;
}

.abjja-event-page-section .entry-content {
	margin: 0;
}

.abjja-event-page-section .entry-content > *:last-child {
	margin-bottom: 0;
}

.abjja-event-detail.is-porrada-club {
	max-width: 1120px;
	overflow-x: clip;
	width: 100%;
}

.abjja-event-detail.is-campeonato {
	background: #f4f6f0;
	max-width: 1120px;
	overflow-x: clip;
	padding-bottom: 10px;
	width: 100%;
}

.abjja-event-page-section.is-porrada-club-page .abjja-event-page-container,
.abjja-event-page-section.is-campeonato-page .abjja-event-page-container {
	max-width: 1180px;
}

.abjja-event-detail.is-porrada-club,
.abjja-event-detail.is-porrada-club *,
.abjja-event-detail.is-campeonato,
.abjja-event-detail.is-campeonato * {
	box-sizing: border-box;
}

.abjja-event-detail.is-porrada-club .abjja-event-hero {
	background: linear-gradient(135deg, #101711, #253b2d);
	border: 0;
	border-radius: 8px;
	box-shadow: 0 18px 44px rgba(17, 24, 19, 0.16);
	color: #f6f8f4;
}

.abjja-event-detail.is-porrada-club .abjja-event-hero h1,
.abjja-event-detail.is-porrada-club .abjja-event-hero p {
	color: inherit;
}

.abjja-event-detail.is-porrada-club .abjja-event-layout,
.abjja-event-detail.is-campeonato .abjja-event-layout {
	grid-template-columns: minmax(0, 720px) 320px;
}

.abjja-event-detail.is-porrada-club .abjja-porrada-bracket {
	grid-column: 1 / -1;
	max-width: 100%;
	min-width: 0;
	overflow: hidden;
	padding: 24px;
}

.abjja-event-detail.is-porrada-club .abjja-event-sidebar,
.abjja-event-detail.is-campeonato .abjja-event-sidebar {
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.abjja-event-main,
.abjja-event-sidebar {
	display: flex;
	flex-direction: column;
	gap: 22px;
}

.abjja-countdown,
.abjja-event-info-box,
.abjja-event-key-points,
.abjja-event-points-card,
.abjja-ticket-summary,
.abjja-registration-panel,
.abjja-map-panel,
.abjja-organizer-card,
.abjja-share-tools,
.abjja-guest-list,
.abjja-porrada-intro,
.abjja-porrada-panel,
.abjja-campeonato-intro,
.abjja-campeonato-panel {
	background: #fff;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	max-width: 100%;
	min-width: 0;
	padding: 20px;
}

.abjja-event-info-box {
	overflow: hidden;
	padding: 0;
}

.abjja-event-info-banner {
	background: #111813;
	margin: 0;
	overflow: hidden;
}

.abjja-event-info-banner img {
	aspect-ratio: 16 / 6;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.abjja-event-info-copy {
	display: grid;
	gap: 0;
	padding: 0;
}

.abjja-event-info-copy h2,
.abjja-event-sidebar h2 {
	font-size: 24px;
	margin: 0 0 14px;
}

.abjja-event-sidebar h2 {
	font-size: 18px;
}

.abjja-event-info-copy p,
.abjja-event-info-copy li {
	color: #33443a;
	font-size: 15px;
	line-height: 1.58;
}

.abjja-event-info-copy p {
	margin: 0 0 12px;
}

.abjja-event-info-copy ul,
.abjja-event-info-copy ol {
	margin-bottom: 14px;
	padding-left: 20px;
}

.abjja-event-info-copy .abjja-event-lede {
	color: #17211b;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.45;
}

.abjja-event-info-row {
	padding: 22px;
}

.abjja-event-info-row:nth-child(odd) {
	background: #fff;
}

.abjja-event-info-row:nth-child(even) {
	background: #f3f7f3;
}

.abjja-event-info-row + .abjja-event-info-row {
	border-top: 1px solid #d8dfdb;
}

.abjja-event-info-row h2 {
	font-size: 22px;
	margin-bottom: 10px;
}

.abjja-key-point-list {
	display: grid;
	gap: 10px;
}

.abjja-key-point-list div {
	background: #f6f8f6;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	padding: 12px;
}

.abjja-key-point-list span,
.abjja-key-point-list strong {
	display: block;
}

.abjja-key-point-list span {
	color: #52625a;
	font-size: 12px;
	font-weight: 900;
	margin-bottom: 5px;
	text-transform: uppercase;
}

.abjja-key-point-list strong {
	color: #17211b;
	font-size: 15px;
	line-height: 1.35;
}

.abjja-points-list {
	display: grid;
	gap: 10px;
}

.abjja-points-list div {
	align-items: center;
	background: linear-gradient(180deg, #fbfcfa, #eef4ee);
	border: 1px solid #d7e1db;
	border-radius: 8px;
	display: flex;
	justify-content: space-between;
	padding: 12px;
}

.abjja-points-list strong {
	color: #203d2b;
}

.abjja-points-list span {
	color: #52625a;
	font-size: 13px;
	font-weight: 800;
}

.abjja-sidebar-actions {
	display: grid;
	gap: 10px;
	margin-top: 14px;
}

.abjja-sidebar-actions a {
	justify-content: center;
	text-align: center;
}

.abjja-campeonato-event-header {
	background: #111812;
	border-radius: 8px;
	box-shadow: 0 20px 50px rgba(22, 32, 25, 0.18);
	color: #f7faf4;
	margin: 0 auto 18px;
	max-width: 1120px;
	overflow: hidden;
}

.abjja-campeonato-banner {
	background: #1b251c;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	margin: 0;
}

.abjja-campeonato-banner img {
	aspect-ratio: 1599 / 596;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.abjja-campeonato-header-copy {
	align-items: end;
	display: grid;
	gap: 18px;
	grid-template-columns: minmax(0, 1.1fr) minmax(260px, 0.75fr) auto;
	padding: 28px;
}

.abjja-campeonato-header-copy h1 {
	color: inherit;
	font-size: 42px;
	line-height: 1.08;
	margin: 6px 0 0;
}

.abjja-campeonato-header-copy .abjja-event-pills {
	left: auto;
	margin-bottom: 10px;
	position: static;
	top: auto;
}

.abjja-campeonato-header-details {
	display: grid;
	gap: 10px;
}

.abjja-campeonato-header-details p {
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 8px;
	color: #eef4ec;
	font-size: 14px;
	line-height: 1.45;
	margin: 0;
	padding: 12px 14px;
}

.abjja-campeonato-header-details strong {
	color: #b8d2bf;
	display: block;
	font-size: 12px;
	margin-bottom: 4px;
	text-transform: uppercase;
}

.abjja-campeonato-event-header .abjja-event-actions {
	align-items: stretch;
	flex-direction: column;
	min-width: 170px;
}

.abjja-campeonato-event-header .abjja-event-actions a,
.abjja-campeonato-event-header .abjja-event-actions button {
	text-align: center;
	width: 100%;
}

.abjja-porrada-intro,
.abjja-campeonato-intro {
	align-items: center;
	background: #111813;
	color: #f4f6f4;
	display: grid;
	gap: 24px;
	grid-template-columns: 220px minmax(0, 1fr);
}

.abjja-campeonato-intro {
	background: #172319;
	border-color: #263a2a;
	box-shadow: 0 16px 38px rgba(33, 48, 36, 0.12);
	grid-template-columns: 240px minmax(0, 1fr);
}

.abjja-porrada-intro h2,
.abjja-porrada-intro p,
.abjja-campeonato-intro h2,
.abjja-campeonato-intro p {
	color: inherit;
}

.abjja-porrada-intro h2,
.abjja-campeonato-intro h2 {
	font-size: 30px;
	margin: 4px 0 12px;
}

.abjja-porrada-logo-lockup,
.abjja-campeonato-logo-lockup {
	align-items: center;
	background: #f7faf8;
	border-radius: 8px;
	display: flex;
	min-height: 190px;
	padding: 18px;
}

.abjja-campeonato-logo-lockup {
	background: #e8efe7;
	min-height: 210px;
}

.abjja-porrada-logo-lockup img,
.abjja-campeonato-logo-lockup img {
	display: block;
	height: auto;
	max-width: 100%;
	width: 100%;
}

.abjja-porrada-kicker,
.abjja-campeonato-kicker {
	color: #b8d2bf;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0;
	margin: 0;
	text-transform: uppercase;
}

.abjja-campeonato-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 18px;
}

.abjja-secondary-link {
	background: #fff;
	border: 1px solid #cfdad3;
	border-radius: 6px;
	color: #26372d;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	line-height: 1;
	padding: 10px 12px;
	text-decoration: none;
}

.abjja-porrada-stat-grid,
.abjja-campeonato-stat-grid,
.abjja-campeonato-podium-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
	margin: 16px 0 22px;
}

.abjja-porrada-stat-grid div,
.abjja-campeonato-stat-grid div,
.abjja-campeonato-podium-grid div {
	background: linear-gradient(180deg, #fbfcfa, #eef4ee);
	border: 1px solid #d7e1db;
	border-radius: 8px;
	min-height: 96px;
	padding: 14px;
}

.abjja-porrada-stat-grid strong,
.abjja-porrada-stat-grid span,
.abjja-campeonato-stat-grid strong,
.abjja-campeonato-stat-grid span,
.abjja-campeonato-podium-grid strong,
.abjja-campeonato-podium-grid span {
	display: block;
}

.abjja-porrada-stat-grid strong,
.abjja-campeonato-stat-grid strong,
.abjja-campeonato-podium-grid strong {
	color: #203d2b;
	font-size: 28px;
	line-height: 1;
}

.abjja-porrada-stat-grid span,
.abjja-campeonato-stat-grid span,
.abjja-campeonato-podium-grid span {
	color: #52625a;
	font-size: 13px;
	font-weight: 800;
	margin-top: 8px;
}

.abjja-porrada-columns,
.abjja-campeonato-columns,
.abjja-campeonato-pricing-grid {
	display: grid;
	gap: 18px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.abjja-campeonato-pricing-grid {
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	margin: 16px 0;
}

.abjja-campeonato-pricing-grid > div {
	background: #f6f8f6;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	padding: 14px;
}

.abjja-porrada-columns h3,
.abjja-campeonato-columns h3,
.abjja-campeonato-pricing-grid h3 {
	font-size: 18px;
	margin: 0 0 10px;
}

.abjja-porrada-columns ul,
.abjja-campeonato-columns ul,
.abjja-campeonato-pricing-grid ul {
	margin: 0;
	padding-left: 20px;
}

.abjja-porrada-columns li + li,
.abjja-campeonato-columns li + li,
.abjja-campeonato-pricing-grid li + li {
	margin-top: 7px;
}

.abjja-porrada-story,
.abjja-campeonato-story {
	background: #f6f8f6;
	border-left: 4px solid #366548;
}

.abjja-campeonato-story {
	border-left-color: #708657;
}

.abjja-porrada-story h2,
.abjja-campeonato-story h2 {
	font-size: 28px;
	margin-bottom: 14px;
}

.abjja-porrada-story p,
.abjja-campeonato-story p {
	color: #2a3a31;
	font-size: 17px;
	line-height: 1.65;
	margin: 0;
}

.abjja-porrada-story p + p,
.abjja-campeonato-story p + p {
	margin-top: 10px;
}

.abjja-porrada-story strong {
	color: #17211b;
}

.abjja-porrada-feature-image {
	background: #111813;
	border-radius: 8px;
	margin: 0;
	overflow: hidden;
}

.abjja-porrada-feature-image img {
	aspect-ratio: 16 / 9;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.abjja-campeonato-timeline {
	display: grid;
	gap: 10px;
	margin-top: 16px;
}

.abjja-campeonato-timeline div {
	align-items: center;
	background: #f6f8f6;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	display: grid;
	gap: 12px;
	grid-template-columns: 150px minmax(0, 1fr);
	padding: 12px 14px;
}

.abjja-campeonato-timeline strong {
	color: #203d2b;
}

.abjja-campeonato-location {
	background: linear-gradient(135deg, #edf4ec, #fff);
}

.abjja-map-panel {
	margin: 28px auto 0;
	max-width: 1120px;
	overflow: hidden;
	padding: 0;
	width: 100%;
}

.abjja-map-panel h2,
.abjja-map-panel p {
	margin-left: 20px;
	margin-right: 20px;
}

.abjja-map-panel h2 {
	margin-top: 20px;
}

.abjja-map-panel p {
	color: #52625a;
}

.abjja-map-layout {
	align-items: stretch;
	display: grid;
	gap: 0;
	grid-template-columns: 320px minmax(0, 1fr);
	margin-top: 16px;
}

.abjja-map-embed {
	background: #e8efe9;
	border-left: 1px solid #d8dfdb;
	margin: 0;
}

.abjja-map-embed iframe {
	border: 0;
	display: block;
	height: 100%;
	min-height: 320px;
	width: 100%;
}

.abjja-directions-widget {
	background: #f6f8f6;
	border: 0;
	border-top: 1px solid #d8dfdb;
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr);
	margin: 0;
	padding: 20px;
}

.abjja-directions-widget h3 {
	font-size: 18px;
	margin: 0;
}

.abjja-directions-widget label {
	display: flex;
	flex-direction: column;
	font-weight: 800;
	gap: 7px;
}

.abjja-directions-widget input {
	border: 1px solid #cfdad3;
	border-radius: 6px;
	min-height: 42px;
	padding: 8px 10px;
}

.abjja-directions-widget button {
	background: #366548;
	border: 1px solid #366548;
	border-radius: 6px;
	color: #fff;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	min-height: 42px;
	padding: 10px 12px;
}

.abjja-directions-widget > a {
	align-items: center;
	background: #fff;
	border: 1px solid #cfdad3;
	border-radius: 6px;
	color: #26372d;
	display: inline-flex;
	font-weight: 800;
	justify-content: center;
	min-height: 42px;
	padding: 10px 12px;
	text-decoration: none;
}

.abjja-directions-widget > a:hover,
.abjja-directions-widget > a:focus {
	background: #284d36;
	border-color: #284d36;
	color: #fff;
}

.abjja-directions-widget .abjja-form-message {
	margin: 0;
}

.abjja-organizer-brand {
	align-items: center;
	display: grid;
	gap: 12px;
	grid-template-columns: 72px minmax(0, 1fr);
	margin-bottom: 14px;
}

.abjja-organizer-brand img {
	background: #f6f8f6;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	display: block;
	height: auto;
	padding: 8px;
	width: 72px;
}

.abjja-organizer-brand strong {
	color: #17211b;
	font-size: 18px;
}

.abjja-organizer-links,
.abjja-share-icon-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.abjja-organizer-links {
	margin-bottom: 14px;
}

.abjja-organizer-links a,
.abjja-share-icon-row a,
.abjja-share-icon-row button {
	align-items: center;
	background: #fff;
	border: 1px solid #cfdad3;
	border-radius: 6px;
	color: #26372d;
	display: inline-flex;
	font: inherit;
	font-weight: 800;
	gap: 7px;
	justify-content: center;
	min-height: 42px;
	padding: 9px 11px;
	text-decoration: none;
}

.abjja-share-icon-row a,
.abjja-organizer-links a,
.abjja-share-icon-row button {
	aspect-ratio: 1;
	min-width: 42px;
	padding: 0;
	position: relative;
}

.abjja-organizer-links a:hover,
.abjja-organizer-links a:focus,
.abjja-share-icon-row a:hover,
.abjja-share-icon-row a:focus,
.abjja-share-icon-row button:hover,
.abjja-share-icon-row button:focus {
	background: #284d36;
	border-color: #284d36;
	color: #fff;
}

.abjja-share-icon-row button[data-copied="true"]::after {
	content: "Copied";
	font-size: 11px;
	position: absolute;
	transform: translateY(32px);
}

.abjja-porrada-academy-grid {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	margin-top: 14px;
}

.abjja-porrada-academy-grid details {
	background: #f6f8f6;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	overflow: hidden;
}

.abjja-porrada-academy-grid summary {
	align-items: center;
	cursor: pointer;
	display: grid;
	gap: 10px;
	grid-template-columns: minmax(0, 1fr) auto;
	list-style: none;
	min-height: 66px;
	padding: 14px;
}

.abjja-porrada-academy-grid summary::-webkit-details-marker {
	display: none;
}

.abjja-porrada-academy-grid summary span {
	color: #17211b;
	font-weight: 900;
}

.abjja-porrada-academy-grid summary a,
.abjja-porrada-academy-grid summary em {
	background: #fff;
	border: 1px solid #cfdad3;
	border-radius: 999px;
	color: #26372d;
	font-size: 12px;
	font-style: normal;
	font-weight: 800;
	padding: 7px 9px;
	text-decoration: none;
	white-space: nowrap;
}

.abjja-porrada-academy-grid p {
	border-top: 1px solid #d8dfdb;
	color: #52625a;
	margin: 0;
	padding: 14px;
}

.abjja-porrada-bracket {
	background: #f6f8f6;
}

.abjja-porrada-bracket > h2 {
	font-size: 30px;
	margin-bottom: 18px;
}

.abjja-porrada-bracket .abjja-knockout {
	max-width: none;
	min-width: 0;
	padding: 0;
	width: 100%;
}

.abjja-porrada-bracket .abjja-bracket-wrap {
	max-width: 100%;
	overflow-x: auto;
	overscroll-behavior-x: contain;
	width: 100%;
}

.abjja-porrada-bracket .abjja-bracket {
	grid-template-columns: repeat(var(--abjja-round-count), minmax(300px, 1fr));
	min-width: min(100%, calc(var(--abjja-round-count) * 320px));
}

.abjja-porrada-sponsor-grid {
	align-items: center;
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	margin-top: 16px;
}

.abjja-porrada-sponsor-grid a {
	align-items: center;
	background: #fff;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	display: flex;
	justify-content: center;
	min-height: 118px;
	padding: 14px;
}

.abjja-porrada-sponsor-grid img {
	display: block;
	height: auto;
	max-height: 86px;
	max-width: 100%;
	object-fit: contain;
}

.abjja-countdown {
	align-items: baseline;
	display: flex;
	gap: 8px;
	justify-content: center;
	margin-bottom: 22px;
}

.abjja-countdown strong {
	font-size: 28px;
}

.abjja-ticket-grid,
.abjja-guest-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	margin: 14px 0;
}

.abjja-ticket-card,
.abjja-guest-grid div,
.abjja-calendar-row,
.abjja-dashboard-row {
	background: #f6f8f6;
	border: 1px solid #d8dfdb;
	border-radius: 8px;
	padding: 12px;
}

.abjja-ticket-card strong,
.abjja-ticket-card span,
.abjja-guest-grid strong,
.abjja-guest-grid span {
	display: block;
}

.abjja-form-grid {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.abjja-form-grid label,
.abjja-event-submit label,
.abjja-event-modal label {
	display: flex;
	flex-direction: column;
	font-weight: 700;
	gap: 7px;
}

.abjja-form-grid input,
.abjja-form-grid select,
.abjja-form-grid textarea,
.abjja-event-submit input,
.abjja-event-submit textarea,
.abjja-event-modal input,
.abjja-event-modal select,
.abjja-event-modal textarea {
	border: 1px solid #cfdad3;
	border-radius: 6px;
	min-height: 42px;
	padding: 8px 10px;
}

.abjja-field-wide {
	grid-column: 1 / -1;
}

.abjja-form-message {
	font-weight: 700;
}

.abjja-form-message.is-error {
	color: #9d2019;
}

.abjja-event-calendar section {
	margin-bottom: 24px;
}

.abjja-calendar-row,
.abjja-dashboard-row {
	align-items: center;
	color: #17211b;
	display: grid;
	gap: 12px;
	grid-template-columns: 58px 1fr auto;
	margin-top: 10px;
	text-decoration: none;
}

.abjja-calendar-row span {
	color: #366548;
	font-size: 24px;
	font-weight: 900;
}

.abjja-event-modal {
	align-items: center;
	background: rgba(8, 13, 10, 0.65);
	display: flex;
	inset: 0;
	justify-content: center;
	padding: 20px;
	position: fixed;
	z-index: 99999;
}

.abjja-event-modal[hidden] {
	display: none;
}

.abjja-event-modal.is-inline {
	background: transparent;
	display: block;
	inset: auto;
	padding: 0;
	position: static;
}

.abjja-event-modal form {
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 22px 80px rgba(0, 0, 0, 0.25);
	display: flex;
	flex-direction: column;
	gap: 12px;
	max-width: 460px;
	padding: 24px;
	position: relative;
	width: 100%;
}

.abjja-event-modal.is-inline form {
	box-shadow: none;
	max-width: 620px;
}

.abjja-modal-close {
	background: transparent;
	border: 0;
	cursor: pointer;
	font-size: 28px;
	line-height: 1;
	position: absolute;
	right: 14px;
	top: 10px;
}

@media (max-width: 860px) {
	.abjja-event-hero,
	.abjja-campeonato-header-copy,
	.abjja-event-layout,
	.abjja-event-detail.is-porrada-club .abjja-event-main,
	.abjja-event-detail.is-campeonato .abjja-event-main,
	.abjja-porrada-intro,
	.abjja-campeonato-intro,
	.abjja-porrada-columns,
	.abjja-campeonato-columns {
		grid-template-columns: minmax(0, 1fr);
	}

	.abjja-event-detail.is-porrada-club .abjja-porrada-intro,
	.abjja-event-detail.is-porrada-club .abjja-porrada-panel:not(.abjja-porrada-bracket),
	.abjja-event-detail.is-campeonato .abjja-campeonato-intro,
	.abjja-event-detail.is-campeonato .abjja-campeonato-story,
	.abjja-event-detail.is-campeonato .abjja-campeonato-panel:not(.abjja-campeonato-story) {
		grid-column: 1 / -1;
	}

	.abjja-event-hero h1 {
		font-size: 34px;
	}

	.abjja-campeonato-header-copy {
		align-items: start;
	}

	.abjja-campeonato-header-copy h1 {
		font-size: 34px;
	}

	.abjja-campeonato-event-header .abjja-event-actions {
		flex-direction: row;
		min-width: 0;
	}
}

@media (max-width: 560px) {
	.abjja-events-header,
	.abjja-event-card-body,
	.abjja-event-actions,
	.abjja-event-card-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	.abjja-calendar-row {
		grid-template-columns: 46px 1fr;
	}

	.abjja-calendar-row small {
		grid-column: 2;
	}

	.abjja-event-page-container {
		padding-left: 12px;
		padding-right: 12px;
	}

	.abjja-event-page-section > .content-wrap {
		padding-bottom: 42px;
		padding-top: 34px;
	}

	.abjja-porrada-intro {
		gap: 16px;
		padding: 18px;
	}

	.abjja-campeonato-intro {
		gap: 16px;
		padding: 18px;
	}

	.abjja-campeonato-header-copy {
		padding: 18px;
	}

	.abjja-campeonato-event-header .abjja-event-actions {
		align-items: stretch;
		flex-direction: column;
		width: 100%;
	}

	.abjja-campeonato-header-copy h1 {
		font-size: 30px;
	}

	.abjja-map-embed iframe {
		min-height: 250px;
	}

	.abjja-map-layout {
		grid-template-columns: 1fr;
	}

	.abjja-map-embed {
		border-left: 0;
		border-top: 1px solid #d8dfdb;
	}

	.abjja-porrada-intro h2,
	.abjja-campeonato-intro h2 {
		font-size: 26px;
	}

	.abjja-porrada-logo-lockup,
	.abjja-campeonato-logo-lockup {
		min-height: 0;
		padding: 12px;
	}

	.abjja-porrada-logo-lockup img,
	.abjja-campeonato-logo-lockup img {
		max-height: 260px;
		object-fit: contain;
	}

	.abjja-porrada-panel,
	.abjja-campeonato-panel {
		padding: 16px;
	}

	.abjja-campeonato-timeline div {
		align-items: flex-start;
		grid-template-columns: minmax(0, 1fr);
	}

	.abjja-event-detail.is-porrada-club .abjja-porrada-bracket {
		padding: 14px;
	}

	.abjja-porrada-bracket .abjja-bracket {
		min-width: calc(var(--abjja-round-count) * 300px);
	}
}
