@import url('https://fonts.googleapis.com/css2?family=Baiana&display=swap');


/* =========================================================
   ABADÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â JOGOS REGISTRATION
   Luxembourg 2027
========================================================= */


/* ---------------------------------------------------------
   VARIABLES
--------------------------------------------------------- */

.abada-jogos-registration {
	--abada-navy: #020C3B;
	--abada-orange: #FB8400;
	--abada-blue: #235FB4;
	--abada-cream: #F7F2E8;
	--abada-white: #FFFFFF;
	--abada-text: #020C3B;
	--abada-muted: #6B6F7B;
	--abada-border: rgba(2, 12, 59, 0.14);

	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
	padding: 64px 24px 80px;
	box-sizing: border-box;

	color: var(--abada-text);
}


/* =========================================================
   HEADER
========================================================= */

.abada-jogos-registration__header {
	max-width: 760px;
	margin: 0 auto 42px;
	text-align: center;
}


.abada-jogos-registration__eyebrow {
	margin-bottom: 10px;

	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.16em;

	color: var(--abada-orange);
}


.abada-jogos-registration__title {
	margin: 0;

	font-family: "Plus Jakarta Sans, serif !important;
	font-size: clamp(56px, 7vw, 92px);
	font-weight: 900;
	line-height: 0.9;

	color: var(--abada-navy);
}


.abada-jogos-registration__intro {
	max-width: 620px;
	margin: 20px auto 0;

	font-size: 17px;
	line-height: 1.65;

	color: var(--abada-muted);
}


/* =========================================================
   PROGRESS
========================================================= */

.abada-jogos-registration__progress {
	position: relative;

	display: grid;
	grid-template-columns: repeat(5, 1fr);

	max-width: 820px;
	margin: 0 auto 48px;
}


.abada-jogos-registration__progress::before {
	content: "";

	position: absolute;
	top: 19px;
	left: 12%;
	right: 12%;

	height: 1px;

	background: rgba(2, 12, 59, 0.15);

	z-index: 0;
}


.abada-jogos-registration__progress-item {
	position: relative;
	z-index: 1;

	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;

	text-align: center;

	color: #8A8E99;
}


.abada-jogos-registration__progress-item span {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 38px;
	height: 38px;

	border: 1px solid rgba(2, 12, 59, 0.18);
	border-radius: 999px;

	background: var(--abada-cream);

	font-size: 11px;
	font-weight: 800;
}


.abada-jogos-registration__progress-item strong {
	font-size: 12px;
	font-weight: 700;
}


.abada-jogos-registration__progress-item.is-active {
	color: var(--abada-navy);
}


.abada-jogos-registration__progress-item.is-active span {
	border-color: var(--abada-orange);
	background: var(--abada-orange);

	color: white;
}


/* =========================================================
   FORM
========================================================= */

.abada-jogos-form {
	display: flex;
	flex-direction: column;
	gap: 24px;
}


/* =========================================================
   SECTIONS
========================================================= */

.abada-jogos-form__section {
	position: relative;

	margin: 0;
	padding: 34px;

	border: 1px solid var(--abada-border);
	border-radius: 22px;

	background: rgba(255, 255, 255, 0.72);

	box-shadow:
		0 10px 35px rgba(2, 12, 59, 0.035);

	box-sizing: border-box;
}


.abada-jogos-form__section legend {
	display: flex;
	align-items: center;
	gap: 12px;

	width: auto;
	margin: 0 0 28px;
	padding: 0 14px 0 0;

	font-size: 21px;
	font-weight: 800;

	color: var(--abada-navy);
}


.abada-jogos-form__section-number {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-width: 42px;
	height: 42px;
	padding: 0 10px;

	border-radius: 12px;

	background: var(--abada-navy);

	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.06em;

	color: white;
}


.abada-jogos-form__section-description {
	margin: -12px 0 26px;

	font-size: 14px;
	line-height: 1.55;

	color: var(--abada-muted);
}


/* =========================================================
   GRID
========================================================= */

.abada-jogos-form__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
}


.abada-jogos-field--full {
	grid-column: 1 / -1;
}


/* =========================================================
   FIELDS
========================================================= */

.abada-jogos-field {
	display: flex;
	flex-direction: column;
	min-width: 0;
}


.abada-jogos-field label {
	margin-bottom: 8px;

	font-size: 13px;
	font-weight: 750;

	color: var(--abada-navy);
}


.abada-jogos-field label span {
	color: var(--abada-orange);
}


.abada-jogos-form input[type="text"],
.abada-jogos-form input[type="email"],
.abada-jogos-form input[type="tel"],
.abada-jogos-form input[type="date"],
.abada-jogos-form input[type="number"],
.abada-jogos-form select,
.abada-jogos-form textarea {
	width: 100%;
	max-width: 100%;

	margin: 0;
	padding: 14px 16px;

	border: 1px solid rgba(2, 12, 59, 0.16);
	border-radius: 12px;

	background: #FFFFFF;

	box-sizing: border-box;

	font-family: inherit;
	font-size: 15px;
	line-height: 1.4;

	color: var(--abada-navy);

	outline: none;

	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease,
		background-color 0.2s ease;
}


.abada-jogos-form select {
	min-height: 52px;
	cursor: pointer;
}


.abada-jogos-form textarea {
	min-height: 130px;
	resize: vertical;
}


.abada-jogos-form input:focus,
.abada-jogos-form select:focus,
.abada-jogos-form textarea:focus {
	border-color: var(--abada-blue);

	box-shadow:
		0 0 0 3px rgba(35, 95, 180, 0.10);
}


.abada-jogos-form input::placeholder,
.abada-jogos-form textarea::placeholder {
	color: #A3A5AB;
}


/* =========================================================
   CHECKBOXES
========================================================= */

.abada-jogos-form__section--final {
	background: var(--abada-navy);
	border-color: var(--abada-navy);

	color: white;
}


.abada-jogos-form__section--final legend {
	color: white;
}


.abada-jogos-form__section--final
.abada-jogos-form__section-number {
	background: var(--abada-orange);
}


.abada-jogos-checkbox + .abada-jogos-checkbox {
	margin-top: 16px;
}


.abada-jogos-checkbox label {
	display: flex;
	align-items: flex-start;
	gap: 12px;

	cursor: pointer;
}


.abada-jogos-checkbox input[type="checkbox"] {
	flex: 0 0 auto;

	width: 19px;
	height: 19px;
	margin: 2px 0 0;

	accent-color: var(--abada-orange);

	cursor: pointer;
}


.abada-jogos-checkbox span {
	font-size: 14px;
	line-height: 1.55;

	color: rgba(255, 255, 255, 0.88);
}


.abada-jogos-checkbox strong {
	color: var(--abada-orange);
}


/* =========================================================
   SUMMARY ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â REGISTRATION CARD V2
========================================================= */

.abada-jogos-summary {
	position: relative;

	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	align-items: stretch;
	gap: 32px;

	padding: 24px;

	border: 1px solid rgba(2, 12, 59, 0.12);
	border-radius: 22px;

	background: #ffffff;

	box-shadow:
		0 18px 45px rgba(2, 12, 59, 0.06);

	overflow: hidden;
}


/* Orange detail on left */

.abada-jogos-summary::before {
	content: "";

	position: absolute;
	top: 0;
	left: 0;

	width: 5px;
	height: 100%;

	background: var(--abada-orange);
}


/* =========================================================
   LEFT SIDE
========================================================= */

.abada-jogos-summary > div:first-child {
	display: flex;
	flex-direction: column;
	justify-content: center;

	min-width: 0;

	padding:
		12px 10px
		12px 12px;
}


.abada-jogos-summary__eyebrow {
	display: block;

	margin-bottom: 10px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: 0.16em;

	color: var(--abada-orange);
}


.abada-jogos-summary__package {
	display: block;

	margin: 0 0 12px;

	font-size: clamp(25px, 2.2vw, 32px);
	font-weight: 900;
	line-height: 1.05;

	color: var(--abada-navy);
}


/* Category / competition pills */

.abada-jogos-summary__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}


#abadaSummaryParticipation,
#abadaSummaryCompetition {
	display: inline-flex;
	align-items: center;

	width: auto;

	padding: 8px 12px;

	border-radius: 999px;

	background: var(--abada-cream);

	font-size: 12px;
	font-weight: 750;
	line-height: 1;

	color: var(--abada-navy);
}


/* =========================================================
   RIGHT SIDE ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â PRICE PANEL
========================================================= */

.abada-jogos-summary__price {
	display: flex;
	flex-direction: column;
	justify-content: center;

	padding: 20px 22px;

	border-radius: 17px;

	background: var(--abada-cream);

	text-align: left;
}


.abada-jogos-summary__price-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 16px;

	padding: 10px 0;
}


.abada-jogos-summary__price-row + 
.abada-jogos-summary__price-row {
	border-top:
		1px solid
		rgba(2, 12, 59, 0.09);
}


.abada-jogos-summary__price-row span {
	display: block;

	margin: 0;

	font-size: 11px;
	font-weight: 650;
	line-height: 1.35;

	color: var(--abada-muted);
}


.abada-jogos-summary__price-row strong {
	display: block;

	font-size: 25px;
	font-weight: 900;
	line-height: 1;

	color: var(--abada-navy);

	white-space: nowrap;
}


/* TOTAL */

.abada-jogos-summary__price-row--total {
	margin-top: 0;
	padding: 16px 0 8px;
}


.abada-jogos-summary__price-row--total span {
	font-weight: 800;

	color: var(--abada-navy);
}


.abada-jogos-summary__price-row--total strong {
	font-size: 36px;

	color: var(--abada-orange);
}

.abada-jogos-summary__price-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;

	padding: 16px 0;
}

.abada-jogos-summary__price-row > span {
	min-width: 0;
	margin: 0;
	line-height: 1.35;
}

.abada-jogos-summary__price-row > span small {
	display: block;
	margin-top: 2px;

	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;

	color: var(--abada-muted);
}

.abada-jogos-summary__price-row > strong {
	white-space: nowrap;
	text-align: right;
}


/* =========================================================
   SUMMARY ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â PAY AT CHECK-IN
========================================================= */

.abada-jogos-checkin-payment {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;

	margin-top: 18px;
	padding: 16px 22px;

	border: 1px solid rgba(2, 12, 59, 0.10);
	border-radius: 16px;

	background: #ffffff;

	box-sizing: border-box;
}

.abada-jogos-checkin-payment[hidden] {
	display: none !important;
}

.abada-jogos-checkin-payment__text {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.abada-jogos-checkin-payment__eyebrow {
	margin-bottom: 3px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: 0.14em;

	color: var(--abada-orange);
}

.abada-jogos-checkin-payment__text strong {
	font-size: 14px;
	font-weight: 850;

	color: var(--abada-navy);
}

.abada-jogos-checkin-payment__text small {
	font-size: 11px;
	font-weight: 600;

	color: var(--abada-muted);
}

.abada-jogos-checkin-payment__price {
	flex: 0 0 auto;

	font-size: 22px;
	font-weight: 900;

	color: var(--abada-navy);
}

@media (max-width: 767px) {

	.abada-jogos-checkin-payment {
		padding: 16px 18px;
	}

	.abada-jogos-checkin-payment__price {
		font-size: 20px;
	}

}




/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

	.abada-jogos-summary {
		grid-template-columns: minmax(0, 1fr) 280px;
		gap: 20px;

		padding: 20px;
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

	.abada-jogos-summary {
		grid-template-columns: 1fr;
		gap: 18px;

		padding: 20px 16px;
	}


	.abada-jogos-summary > div:first-child {
		padding: 6px 5px 0 8px;
	}


	.abada-jogos-summary__package {
		font-size: 26px;
	}


	.abada-jogos-summary__price {
		padding: 16px 18px;
	}


	.abada-jogos-summary__price-row strong {
		font-size: 22px;
	}


	.abada-jogos-summary__price-row--total strong {
		font-size: 32px;
	}

}


/* =========================================================
   ACTIONS
========================================================= */

.abada-jogos-form__actions {
	padding-top: 6px;

	text-align: center;
}


.abada-jogos-form__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 18px;

	width: 100%;
	min-height: 62px;

	padding: 17px 28px;

	border: 0;
	border-radius: 14px;

	background: var(--abada-orange);

	font-family: inherit;
	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0.055em;

	color: white;

	cursor: pointer;

	box-shadow:
		0 10px 30px rgba(251, 132, 0, 0.18);

	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease,
		background-color 0.2s ease;
}


.abada-jogos-form__submit:hover {
	background: #E97700;

	transform: translateY(-2px);

	box-shadow:
		0 14px 36px rgba(251, 132, 0, 0.24);
}


.abada-jogos-form__submit span {
	font-size: 22px;
	line-height: 1;
}


.abada-jogos-form__payment-note {
	margin: 12px 0 0;

	font-size: 12px;

	color: var(--abada-muted);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

.abada-jogos-registration {
	padding: 44px 8px 60px;
}


	.abada-jogos-registration__header {
		margin-bottom: 32px;
	}


	.abada-jogos-registration__title {
		font-size: 40px;
	}


	.abada-jogos-registration__intro {
		font-size: 15px;
	}


	.abada-jogos-registration__progress {
		grid-template-columns: repeat(5, 1fr);

		margin-bottom: 32px;
	}


	.abada-jogos-registration__progress::before {
		left: 10%;
		right: 10%;
	}


	.abada-jogos-registration__progress-item strong {
		display: none;
	}


	.abada-jogos-registration__progress-item span {
		width: 34px;
		height: 34px;
	}


	.abada-jogos-form {
		gap: 18px;
	}


	.abada-jogos-form__section {
		padding: 22px 18px;

		border-radius: 17px;
	}


	.abada-jogos-form__section legend {
		margin-bottom: 22px;

		font-size: 18px;
	}


	.abada-jogos-form__section-number {
		min-width: 38px;
		height: 38px;
	}


	.abada-jogos-form__grid {
		grid-template-columns: 1fr;

		gap: 18px;
	}


	.abada-jogos-field--full {
		grid-column: auto;
	}


	.abada-jogos-summary {
		align-items: flex-start;
		flex-direction: column;

		padding: 22px;

		border-radius: 16px;
	}


	.abada-jogos-summary__price {
		width: 100%;

		text-align: left;
	}


	.abada-jogos-form__submit {
		min-height: 58px;

		padding: 15px 18px;

		font-size: 12px;
	}

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 420px) {

	.abada-jogos-registration__progress::before {
		left: 8%;
		right: 8%;
	}


	.abada-jogos-form__section {
		padding-left: 20px;
		padding-right: 20px;
	}


	.abada-jogos-registration__title {
		font-size: 42px;
	}
	
	.abada-jogos-registration {
	padding-left: 6px;
	padding-right: 6px;
}

}

/* =========================================================
   BOARDING PASS
========================================================= */

.abada-ticket-page {
	--ticket-navy: #020C3B;
	--ticket-orange: #FB8400;
	--ticket-blue: #235FB4;
	--ticket-cream: #F7F2E8;
	--ticket-white: #FFFFFF;
	--ticket-muted: #6D7180;

	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding: 80px 24px 100px;
	box-sizing: border-box;
}


/* =========================================================
   TICKET
========================================================= */

.abada-ticket {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 270px;

	width: 100%;
	min-height: 440px;

	border-radius: 28px;

	overflow: hidden;

	background: var(--ticket-navy);


	position: relative;
}


/* =========================================================
   MAIN SIDE
========================================================= */

.abada-ticket__main {
	position: relative;

	display: flex;
	flex-direction: column;

	padding: 52px;

	color: white;

	background:
		radial-gradient(
			circle at 80% 10%,
			rgba(35, 95, 180, 0.28),
			transparent 35%
		),
		linear-gradient(
			135deg,
			#020C3B 0%,
			#07184D 100%
		);
}




/* =========================================================
   TOP
========================================================= */

.abada-ticket__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 30px;
}


.abada-ticket__eyebrow {
	display: block;

	margin-bottom: 10px;

	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.18em;

	color: var(--ticket-orange);
}


.abada-ticket__event {
	margin: 0;

	font-size: clamp(38px, 5vw, 66px);
	font-weight: 800;
	line-height: 0.95;
	letter-spacing: -0.035em;

	color: white;
}


.abada-ticket__date {
	flex: 0 0 auto;

	text-align: right;
}


.abada-ticket__date strong {
	display: block;

	font-size: 17px;
	font-weight: 800;

	color: white;
}


.abada-ticket__date span {
	display: block;

	margin-top: 3px;

	font-size: 18px;
	font-weight: 900;

	color: var(--ticket-orange);
}

.abada-ticket__date-label {
	display: block;
	margin-bottom: 8px;

	font-size: 10px;
	font-weight: 800;
	letter-spacing: .16em;

	color: var(--ticket-orange);
}

.abada-ticket__date {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 6px;
	row-gap: 0;

	margin-top: 0;
	padding: 0;

	text-align: left;
}

.abada-ticket__date-label {
	display: block;
	width: 100%;

	margin: 0 0 8px;
	padding: 0;

	font-size: 10px;
	font-weight: 800;
	letter-spacing: .16em;

	color: var(--ticket-orange);
}

.abada-ticket__date strong,
.abada-ticket__date span {
	display: inline;

	margin: 0;
	padding: 0;

	font-size: 17px;
	font-weight: 800;
	line-height: 1.3;

	color: white;
}

/* =========================================================
   PARTICIPANT
========================================================= */

.abada-ticket__participant {
	margin-top: 62px;
}


.abada-ticket__participant span {
	display: block;

	margin-bottom: 8px;

	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.16em;

	color: var(--ticket-orange);
}


.abada-ticket__participant > strong {
	display: block;

	font-size: clamp(28px, 4vw, 44px);
	font-weight: 750;
	line-height: 1.05;

	color: white;
}


.abada-ticket__participant-info {
	display: grid;
	grid-template-columns: repeat(5, max-content);
    justify-content: space-between;
	gap: 28px;

	margin-top: 18px;
}


.abada-ticket__participant-info > div {
	min-width: 0;
}


.abada-ticket__participant-info span {
	margin-bottom: 6px;
}


.abada-ticket__participant-info strong {
	display: block;

	font-size: 14px;
	font-weight: 750;
	line-height: 1.3;

	color: white;

	overflow-wrap: anywhere;
}

/* =========================================================
   DETAILS
========================================================= */

.abada-ticket__details {
	display: grid;
	grid-template-columns:
		1fr
		1.25fr
		1fr;

	gap: 26px;

	margin-top: 34px;
	padding-top: 26px;

	border-top: 1px solid rgba(255, 255, 255, 0.13);
}


.abada-ticket__details > div,
.abada-ticket__footer > div {
	min-width: 0;
}


.abada-ticket__details span,
.abada-ticket__footer span {
	display: block;

	margin-bottom: 7px;

	font-size: 9px;
	font-weight: 800;
	letter-spacing: 0.14em;

	color: rgba(255, 255, 255, 0.5);
}


.abada-ticket__details strong,
.abada-ticket__footer strong {
	display: block;

	font-size: 15px;
	font-weight: 750;
	line-height: 1.3;

	color: white;

	overflow-wrap: anywhere;
}


.abada-ticket__confirmed {
	color: #78C96D !important;
}


/* =========================================================
   FOOTER DETAILS
========================================================= */

.abada-ticket__footer {
	display: grid;
	grid-template-columns:
		0.8fr
		1.4fr
		1fr;

	gap: 26px;

	margin-top: auto;
	padding-top: 42px;
}


/* =========================================================
   TICKET STUB
========================================================= */

.abada-ticket__stub {
	position: relative;

	display: flex;
	flex-direction: column;
	align-items: center;

	padding: 48px 28px 34px;

	text-align: center;

	background: var(--ticket-cream);

	color: var(--ticket-navy);
}


/* perforated ticket edge */

.abada-ticket__stub::before {
	content: "";

	position: absolute;
	top: 0;
	bottom: 0;
	left: -8px;

	width: 16px;

	background:
		radial-gradient(
			circle at center,
			white 0 6px,
			transparent 6.5px
		);

	background-size: 16px 28px;
	background-position: center 4px;
}


.abada-ticket__stub-label {
	font-size: 12px;
	font-weight: 800;
	letter-spacing: 0.06em;

	color: var(--ticket-navy);
}


.abada-ticket__stub > strong {
	margin-top: 3px;

	font-size: 23px;
	font-weight: 900;

	color: #53D769;
}


/* =========================================================
   QR PLACEHOLDER
========================================================= */

.abada-ticket__qr-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 150px;
	height: 150px;

	margin: 34px auto 20px;

	border: 2px solid rgba(2, 12, 59, 0.12);
	border-radius: 14px;

	background:
		linear-gradient(
			135deg,
			#FFFFFF,
			#F2EEE6
		);

}


.abada-ticket__qr-placeholder span {
	font-size: 34px;
	font-weight: 900;
	letter-spacing: -0.08em;

	color: rgba(2, 12, 59, 0.22);
}


.abada-ticket__qr-text {
	max-width: 180px;

	font-size: 11px;
	line-height: 1.5;

	color: var(--ticket-muted);
}

.abada-ticket__wallet-button {
	width: 100%;
	max-width: 190px;

	margin-top: 16px;
	padding: 12px 16px;

	border: 0;
	border-radius: 12px;

	font: inherit;
	font-size: 12px;
	font-weight: 800;
	text-align: center;

	background: #FB8400;
color: white;

cursor: default;
opacity: 1;
}

.abada-ticket__stub-number {
	margin-top: auto;
	padding-top: 30px;

	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.08em;

	color: var(--ticket-navy);
}


/* =========================================================
   MESSAGE
========================================================= */

.abada-ticket-message {
	max-width: 700px;
	margin: 70px auto;
	padding: 30px;

	border-radius: 18px;

	background: var(--ticket-cream);

	text-align: center;
}


.abada-ticket-message strong {
	display: block;

	font-size: 24px;

	color: var(--ticket-navy);
}


.abada-ticket-message p {
	margin: 8px 0 0;

	color: var(--ticket-muted);
}


/* =========================================================
   TABLET / MOBILE
========================================================= */

@media (max-width: 900px) {

	.abada-ticket-page {
		padding: 50px 18px 70px;
	}


	.abada-ticket {
		grid-template-columns: 1fr;

		max-width: 680px;
		margin: 0 auto;
	}


	.abada-ticket__main {
		padding: 38px 32px;
	}


	.abada-ticket__main::after {
		display: none;
	}


	.abada-ticket__stub {
		min-height: 330px;

		padding: 38px 28px;
	}


	.abada-ticket__stub::before {
		top: -8px;
		left: 0;
		right: 0;
		bottom: auto;

		width: 100%;
		height: 16px;

		background:
			radial-gradient(
				circle at center,
				white 0 6px,
				transparent 6.5px
			);

		background-size: 28px 16px;
		background-position: 4px center;
	}


	.abada-ticket__footer {
		margin-top: 36px;
		padding-top: 26px;

		border-top: 1px solid rgba(255, 255, 255, 0.13);
	}

}


.abada-ticket__top {
	flex-direction: column;
	align-items: flex-start;
}

.abada-ticket__date {
	margin-top: 28px;
	text-align: left;
}

.abada-ticket__participant-info {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	justify-content: normal;
	gap: 22px 28px;
}

@media (max-width: 600px) {

	.abada-ticket-page {
		padding-left: 12px;
		padding-right: 12px;
	}


	.abada-ticket {
		border-radius: 20px;
	}


	.abada-ticket__main {
		padding: 30px 22px;
	}


	.abada-ticket__top {
		flex-direction: column;
	}


	.abada-ticket__date {
		text-align: left;
	}


	.abada-ticket__participant {
		margin-top: 40px;
	}


	.abada-ticket__details,
	.abada-ticket__footer {
		grid-template-columns: 1fr;
		gap: 20px;
	}


	.abada-ticket__details {
		margin-top: 28px;
	}


	.abada-ticket__footer {
		margin-top: 30px;
	}


	.abada-ticket__qr-placeholder {
		width: 160px;
		height: 160px;
	}
	
	.abada-ticket__event {
	font-size: 34px;
	line-height: 0.98;
    }
    
    .abada-ticket__participant-info {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	justify-content: normal;
	gap: 18px 24px;
}

}
/* =========================================================
   STAFF SCANNER ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â RESULT
========================================================= */

.abada-staff-scanner {
	--scanner-navy: #020C3B;
	--scanner-orange: #FB8400;
	--scanner-cream: #F7F2E8;
	--scanner-green: #198754;
	--scanner-red: #B42318;
	--scanner-muted: #717581;

	width: 100%;
	max-width: 620px;
	margin: 0 auto;
	padding: 40px 18px 60px;

	box-sizing: border-box;
}


/* =========================================================
   RESULT CARD
========================================================= */

.abada-scanner-result {
	width: 100%;

	border-radius: 26px;

	overflow: hidden;

	background: #fff;

	box-shadow:
		0 18px 55px rgba(2, 12, 59, 0.14);
}


/* =========================================================
   COLOURS
========================================================= */

.abada-scanner-result--valid
.abada-scanner-result__status {
	background: var(--scanner-green);
}


.abada-scanner-result--used
.abada-scanner-result__status {
	background: var(--scanner-orange);
}


.abada-scanner-result--invalid
.abada-scanner-result__status {
	background: var(--scanner-red);
}


/* =========================================================
   STATUS TOP
========================================================= */

.abada-scanner-result__status {
	padding: 42px 26px 36px;

	text-align: center;

	color: white;
}


.abada-scanner-result__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 78px;
	height: 78px;

	margin: 0 auto 20px;

	border: 3px solid rgba(255, 255, 255, 0.88);
	border-radius: 999px;

	font-size: 40px;
	font-weight: 900;
	line-height: 1;

	color: white;
}


.abada-scanner-result__eyebrow {
	display: block;

	margin-bottom: 10px;

	font-size: 11px;
	font-weight: 900;
	letter-spacing: 0.18em;

	color: white;
}


.abada-scanner-result__status h2 {
	margin: 0;

	font-size: clamp(30px, 7vw, 44px);
	font-weight: 900;
	line-height: 1.05;

	color: white;
}


.abada-scanner-result__status p {
	max-width: 390px;

	margin: 14px auto 0;

	font-size: 14px;
	line-height: 1.5;

	color: rgba(255, 255, 255, 0.88);
}


/* =========================================================
   PARTICIPANT DETAILS
========================================================= */

.abada-scanner-result__details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));

	gap: 0;

	padding: 8px 26px 28px;

	background: white;
}


.abada-scanner-result__details > div {
	padding: 20px 12px;

	border-bottom: 1px solid rgba(2, 12, 59, 0.10);
}


.abada-scanner-result__details span {
	display: block;

	margin-bottom: 6px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: 0.12em;

	color: var(--scanner-muted);
}


.abada-scanner-result__details strong {
	display: block;

	font-size: 17px;
	font-weight: 800;
	line-height: 1.3;

	color: var(--scanner-navy);

	overflow-wrap: anywhere;
}


.abada-scanner-result__full {
	grid-column: 1 / -1;
}


/* =========================================================
   VALID TICKET FOOTER
========================================================= */

.abada-scanner-result__ready {
	margin: 0 26px 28px;
	padding: 17px 20px;

	border-radius: 14px;

	background: rgba(25, 135, 84, 0.10);

	text-align: center;

	font-size: 14px;
	font-weight: 900;
	letter-spacing: 0.04em;

	color: var(--scanner-green);
}


/* =========================================================
   NEXT TICKET BUTTON
========================================================= */

.abada-staff-scanner__controls {
	margin-top: 18px;
}


.abada-staff-scanner__secondary-button {
	width: 100%;

	padding: 17px 20px;

	border: 2px solid var(--scanner-navy);
	border-radius: 14px;

	background: transparent;

	font-family: inherit;
	font-size: 13px;
	font-weight: 900;
	letter-spacing: 0.055em;

	color: var(--scanner-navy);

	cursor: pointer;

	transition:
		background-color 0.2s ease,
		color 0.2s ease,
		transform 0.2s ease;
}


.abada-staff-scanner__secondary-button:hover {
	background: var(--scanner-navy);

	color: white;

	transform: translateY(-1px);
}


/* =========================================================
   LOADING
========================================================= */

.abada-staff-scanner__loading {
	padding: 50px 20px;

	text-align: center;
}


.abada-staff-scanner__spinner {
	width: 48px;
	height: 48px;

	margin: 0 auto 18px;

	border: 4px solid rgba(2, 12, 59, 0.12);
	border-top-color: var(--scanner-orange);
	border-radius: 999px;

	animation: abadaScannerSpin 0.8s linear infinite;
}


@keyframes abadaScannerSpin {

	to {
		transform: rotate(360deg);
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abada-staff-scanner {
		padding-left: 14px;
		padding-right: 14px;
	}


	.abada-scanner-result {
		border-radius: 22px;
	}


	.abada-scanner-result__status {
		padding: 36px 20px 32px;
	}


	.abada-scanner-result__icon {
		width: 70px;
		height: 70px;

		font-size: 36px;
	}


	.abada-scanner-result__details {
		grid-template-columns: 1fr;

		padding-left: 20px;
		padding-right: 20px;
	}


	.abada-scanner-result__full {
		grid-column: auto;
	}


	.abada-scanner-result__ready {
		margin-left: 20px;
		margin-right: 20px;
	}

}
/* =========================================================
   STAFF SCANNER ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â CHECK-IN ACTIONS
   ========================================================= */

.abada-scanner-result__confirm-wrap {
	padding: 0 22px 24px;
}


/* BOTÃƒÆ’Ã†â€™Ãƒâ€ Ã¢â‚¬â„¢O PRINCIPAL ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â CONFIRMAR ENTRADA */

.abada-scanner-result__confirm {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	min-height: 62px;

	padding: 18px 22px;

	border: 0;
	border-radius: 16px;

	background: #198754;

	box-shadow:
		0 10px 24px rgba(25, 135, 84, 0.25);

	font-family: inherit;
	font-size: 15px;
	font-weight: 900;

	letter-spacing: 0.07em;
	text-transform: uppercase;

	color: #ffffff;

	cursor: pointer;

	transition:
		transform 0.15s ease,
		box-shadow 0.15s ease,
		opacity 0.15s ease;
}


.abada-scanner-result__confirm:hover {
	transform: translateY(-1px);

	box-shadow:
		0 14px 30px rgba(25, 135, 84, 0.32);
}


.abada-scanner-result__confirm:active {
	transform: translateY(1px);
}


.abada-scanner-result__confirm:disabled {
	opacity: 0.65;
	cursor: wait;
	transform: none;
}


/* =========================================================
   USED / CHECK-IN COMPLETED
   ========================================================= */

.abada-scanner-result--used
.abada-scanner-result__full {
	margin-top: 18px;

	padding: 16px 18px;

	border-radius: 14px;

	background:
		rgba(251, 132, 0, 0.10);
}


.abada-scanner-result--used
.abada-scanner-result__full strong {
	display: block;

	margin-top: 18px;

	font-size: 18px;
	font-weight: 900;

	color: #020C3B;
}


/* =========================================================
   NEXT TICKET BUTTON
   ========================================================= */

.abada-staff-scanner__controls {
	padding-top: 14px;
}


.abada-staff-scanner__secondary-button {
	width: 100%;
	min-height: 58px;

	padding: 16px 20px;

	border: 2px solid #020C3B;
	border-radius: 16px;

	background: #ffffff;

	font-family: inherit;
	font-size: 14px;
	font-weight: 900;

	letter-spacing: 0.05em;
	text-transform: uppercase;

	color: #020C3B;

	cursor: pointer;

	transition:
		background 0.15s ease,
		color 0.15s ease,
		transform 0.15s ease;
}


.abada-staff-scanner__secondary-button:hover {
	background: #020C3B;
	color: #ffffff;
}


.abada-staff-scanner__secondary-button:active {
	transform: scale(0.99);
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

	.abada-scanner-result__confirm-wrap {
		padding:
			0 16px
			18px;
	}


	.abada-scanner-result__confirm {
		min-height: 64px;

		font-size: 15px;
	}


	.abada-staff-scanner__secondary-button {
		min-height: 60px;
	}

}
.abada-staff-scanner__header {
	margin-bottom: 24px !important;
}

/* =========================================================
   STAFF SCANNER ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â CAMERA EXPERIENCE
   ========================================================= */


/* ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Ârea geral do scanner */

.abada-staff-scanner__camera {
	position: relative;

	margin-top: 20px;
	padding: 12px;

	border-radius: 24px;

	background: #020C3B;

	box-shadow:
		0 18px 45px rgba(2, 12, 59, 0.18);

	overflow: hidden;
}


/* ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Ârea onde aparece a cÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¢mara */

.abada-staff-scanner__reader {
	position: relative;

	width: 100%;

	border: 0 !important;
	border-radius: 18px;

	background: #020C3B;

	overflow: hidden;
}


/* Remove a aparÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âªncia default da biblioteca */

#abadaQrReader {
	border: 0 !important;
	background: #020C3B !important;
}


/* VÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­deo */

#abadaQrReader video {
	display: block;

	width: 100% !important;

	border-radius: 18px !important;

	object-fit: cover;

	background: #020C3B;
}


/* Imagens / elementos que a biblioteca possa inserir */

#abadaQrReader img {
	max-width: 100%;
}


/* Linha laranja no topo para dar identidade */

.abada-staff-scanner__camera::before {
	content: "";

	position: absolute;

	top: 0;
	left: 50%;

	width: 84px;
	height: 5px;

	transform: translateX(-50%);

	border-radius: 0 0 10px 10px;

	background: #FB8400;

	z-index: 20;
}


/* =========================================================
   CAMERA HELP
   ========================================================= */

.abada-staff-scanner__camera-help {
	display: flex;
	align-items: center;
	justify-content: center;

	padding: 16px 10px 6px;

	text-align: center;
}


.abada-staff-scanner__camera-help span {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	padding: 9px 16px;

	border:
		1px solid
		rgba(255,255,255,0.18);

	border-radius: 999px;

	background:
		rgba(255,255,255,0.08);

	font-size: 12px;
	font-weight: 800;

	letter-spacing: 0.04em;

	color: #ffffff;
}


/* Pequeno ponto indicador */

.abada-staff-scanner__camera-help span::before {
	content: "";

	display: inline-block;

	width: 8px;
	height: 8px;

	margin-right: 9px;

	border-radius: 50%;

	background: #FB8400;

	box-shadow:
		0 0 0 4px
		rgba(251,132,0,0.18);
}


/* =========================================================
   START SCREEN
   ========================================================= */

.abada-staff-scanner__start {
	margin-top: 22px;

	padding: 34px 24px;

	border:
		1px solid
		rgba(2,12,59,0.09);

	border-radius: 24px;

	background:
		linear-gradient(
			180deg,
			#ffffff 0%,
			#f8f9fc 100%
		);

	text-align: center;

	box-shadow:
		0 14px 40px
		rgba(2,12,59,0.07);
}


.abada-staff-scanner__camera-icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 72px;
	height: 72px;

	margin: 0 auto 18px;

	border-radius: 50%;

	background: #020C3B;

	font-size: 34px;
	font-weight: 900;

	color: #ffffff;

	box-shadow:
		0 10px 24px
		rgba(2,12,59,0.18);
}


.abada-staff-scanner__start h2 {
	margin:
		0 0 8px;

	font-size: 25px;
	font-weight: 900;

	color: #020C3B;
}


.abada-staff-scanner__start p {
	max-width: 360px;

	margin:
		0 auto 22px;

	font-size: 14px;
	line-height: 1.55;

	color: #6c7080;
}


/* ABRIR SCANNER */

.abada-staff-scanner__start-button {
	width: 100%;
	min-height: 60px;

	padding: 17px 22px;

	border: 0;
	border-radius: 16px;

	background: #020C3B;

	box-shadow:
		0 12px 26px
		rgba(2,12,59,0.20);

	font-family: inherit;
	font-size: 14px;
	font-weight: 900;

	letter-spacing: 0.07em;

	color: #ffffff;

	cursor: pointer;
}


.abada-staff-scanner__start-button:active {
	transform: scale(0.99);
}


/* =========================================================
   LOADING
   ========================================================= */

.abada-staff-scanner__loading {
	margin-top: 22px;
	padding: 38px 20px;

	border-radius: 24px;

	background: #020C3B;

	text-align: center;

	color: #ffffff;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

	.abada-staff-scanner__camera {
		margin-top: 18px;

		padding: 9px;

		border-radius: 22px;
	}


	.abada-staff-scanner__reader,
	#abadaQrReader video {
		border-radius: 16px !important;
	}


	.abada-staff-scanner__start {
		padding:
			30px 18px;
	}

}

/* =========================================================
   REGISTRATION FORM ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â UNIFIED FIELD DESIGN
   ========================================================= */

.abada-jogos-field input[type="text"],
.abada-jogos-field input[type="email"],
.abada-jogos-field input[type="tel"],
.abada-jogos-field input[type="date"],
.abada-jogos-field input[type="number"],
.abada-jogos-field select {
	width: 100%;
	height: 54px;

	padding: 0 16px;

	border: 1px solid rgba(2, 12, 59, 0.14);
	border-radius: 14px;

	background: #ffffff;

	font-family: inherit;
	font-size: 14px;
	font-weight: 500;

	color: #020C3B;

	box-shadow: none;

	outline: none;

	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease,
		background 0.2s ease;

	-webkit-appearance: none;
	appearance: none;
}


/* Focus */

.abada-jogos-field input[type="text"]:focus,
.abada-jogos-field input[type="email"]:focus,
.abada-jogos-field input[type="tel"]:focus,
.abada-jogos-field input[type="date"]:focus,
.abada-jogos-field input[type="number"]:focus,
.abada-jogos-field select:focus,
.abada-jogos-field textarea:focus {
	border-color: #FB8400;

	box-shadow:
		0 0 0 3px
		rgba(251, 132, 0, 0.10);

	background-color: #ffffff;
}


/* Select arrow */

.abada-jogos-field select {
	padding-right: 42px;

	background-image:
		linear-gradient(45deg, transparent 50%, #020C3B 50%),
		linear-gradient(135deg, #020C3B 50%, transparent 50%);

	background-position:
		calc(100% - 19px) 23px,
		calc(100% - 14px) 23px;

	background-size:
		5px 5px,
		5px 5px;

	background-repeat: no-repeat;
}


/* Textarea */

.abada-jogos-field textarea {
	width: 100%;
	min-height: 130px;

	padding: 15px 16px;

	border: 1px solid rgba(2, 12, 59, 0.14);
	border-radius: 14px;

	background: #ffffff;

	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.5;

	color: #020C3B;

	resize: vertical;

	outline: none;

	transition:
		border-color 0.2s ease,
		box-shadow 0.2s ease;
}


/* Placeholder */

.abada-jogos-field input::placeholder,
.abada-jogos-field textarea::placeholder {
	color: rgba(2, 12, 59, 0.42);
	opacity: 1;
}


/* Labels */

.abada-jogos-field label {
	display: block;

	margin-bottom: 8px;

	font-size: 12px;
	font-weight: 800;
	line-height: 1.25;

	color: #020C3B;
}


/* Help texts */

.abada-jogos-field__help {
	display: block;

	margin-top: 7px;

	font-size: 11px;
	line-height: 1.4;

	color: rgba(2, 12, 59, 0.58);
}


/* Number input: don't let browser styling change height */

.abada-jogos-field input[type="number"] {
	min-height: 54px;
}


/* Date input */

.abada-jogos-field input[type="date"] {
	min-height: 54px;
}


/* Mobile */

@media (max-width: 600px) {

	.abada-jogos-field input[type="text"],
	.abada-jogos-field input[type="email"],
	.abada-jogos-field input[type="tel"],
	.abada-jogos-field input[type="date"],
	.abada-jogos-field input[type="number"],
	.abada-jogos-field select {
		height: 56px;
		font-size: 16px;
	}

	.abada-jogos-field textarea {
		font-size: 16px;
	}

}
/* =========================================================
   CPF CONDITIONAL VISIBILITY
   ========================================================= */

#abadaCpfField[hidden] {
	display: none !important;
}

/* =========================================================
   FINAL SECTION ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â CLEAN LEGEND
   ========================================================= */

.abada-jogos-form__section--final {
	padding-top: 62px;
}

.abada-jogos-form__section--final legend {
	display: flex;
	align-items: center;
	gap: 12px;

	margin: 0;
	padding: 0;

	transform: translateY(41px);

	background: transparent;

	color: #ffffff;
}

.abada-jogos-form__section--final
.abada-jogos-form__section-number {
	background: #FB8400;
}

/* =========================================================
   REGISTRATION FORM ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â FORCE CONSISTENT FIELD SHAPE
   ========================================================= */

.abada-jogos-field input[type="text"],
.abada-jogos-field input[type="email"],
.abada-jogos-field input[type="tel"],
.abada-jogos-field input[type="date"],
.abada-jogos-field input[type="number"],
.abada-jogos-field select,
.abada-jogos-field textarea {
	border-radius: 14px !important;
	border: 1px solid rgba(2, 12, 59, 0.14) !important;
	background-color: #ffffff !important;
	box-shadow: none;
	box-sizing: border-box;
}

.abada-jogos-field input[type="text"],
.abada-jogos-field input[type="email"],
.abada-jogos-field input[type="tel"],
.abada-jogos-field input[type="date"],
.abada-jogos-field input[type="number"],
.abada-jogos-field select {
	height: 54px !important;
	min-height: 54px !important;
}

/* =========================================================
   LEGAL MODAL
   ========================================================= */

.abada-jogos-modal[hidden] {
	display: none !important;
}

.abada-jogos-modal {
	position: fixed;
	inset: 0;

	z-index: 999999;

	display: flex;
	align-items: center;
	justify-content: center;

	padding: 24px;

	box-sizing: border-box;
}

.abada-jogos-modal__backdrop {
	position: absolute;
	inset: 0;

	background: rgba(2, 12, 59, 0.78);

	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
}

.abada-jogos-modal__dialog {
	position: relative;
	z-index: 1;

	display: flex;
	flex-direction: column;

	width: 100%;
	max-width: 820px;
	max-height: min(86vh, 900px);

	border-radius: 24px;

	background: #F7F2E8;

	box-shadow:
		0 30px 90px rgba(2, 12, 59, 0.32);

	overflow: hidden;

	outline: none;
}


/* HEADER */

.abada-jogos-modal__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;

	padding: 28px 30px 24px;

	background: #020C3B;

	color: #ffffff;
}

.abada-jogos-modal__eyebrow {
	display: block;

	margin-bottom: 7px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: 0.15em;

	color: #FB8400;
}

.abada-jogos-modal__header h2 {
	margin: 0;

	font-size: 28px;
	font-weight: 900;
	line-height: 1.15;

	color: #ffffff;
}

.abada-jogos-modal__close {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 auto;

	width: 42px;
	height: 42px;

	padding: 0;

	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 50%;

	background: rgba(255, 255, 255, 0.08);

	font-family: inherit;
	font-size: 28px;
	font-weight: 300;
	line-height: 1;

	color: #ffffff;

	cursor: pointer;

	transition:
		background 0.2s ease,
		transform 0.2s ease;
}

.abada-jogos-modal__close:hover {
	background: rgba(255, 255, 255, 0.16);
	transform: scale(1.04);
}


/* BODY */

.abada-jogos-modal__body {
	padding: 30px;

	overflow-y: auto;
	overscroll-behavior: contain;

	font-size: 14px;
	line-height: 1.7;

	color: #020C3B;
}

.abada-jogos-modal__event {
	margin: 0 0 28px;
	padding: 18px 20px;

	border-left: 4px solid #FB8400;
	border-radius: 0 14px 14px 0;

	background: #ffffff;

	line-height: 1.55;
}

.abada-jogos-modal__body h3 {
	margin: 30px 0 10px;

	font-size: 17px;
	font-weight: 900;
	line-height: 1.3;

	color: #020C3B;
}

.abada-jogos-modal__body p {
	margin: 0 0 14px;
}

.abada-jogos-modal__body p:last-child {
	margin-bottom: 0;
}


/* FOOTER */

.abada-jogos-modal__footer {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;

	padding: 20px 30px;

	border-top: 1px solid rgba(2, 12, 59, 0.10);

	background: #ffffff;
}

.abada-jogos-modal__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-height: 48px;

	padding: 13px 20px;

	border-radius: 12px;

	font-family: inherit;
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.055em;

	cursor: pointer;

	transition:
		transform 0.2s ease,
		background 0.2s ease,
		border-color 0.2s ease;
}

.abada-jogos-modal__button--secondary {
	border: 1px solid rgba(2, 12, 59, 0.16);

	background: transparent;

	color: #020C3B;
}

.abada-jogos-modal__button--secondary:hover {
	background: rgba(2, 12, 59, 0.05);
}

.abada-jogos-modal__button--accept {
	border: 1px solid #FB8400;

	background: #FB8400;

	color: #ffffff;
}

.abada-jogos-modal__button--accept:hover {
	background: #E97700;
	border-color: #E97700;

	transform: translateY(-1px);
}


/* LEGAL LINK INSIDE CHECKBOX */

.abada-jogos-legal-link {
	display: inline;

	margin: 0;
	padding: 0;

	border: 0;

	background: transparent;

	font-family: inherit;
	font-size: inherit;
	font-weight: 800;
	line-height: inherit;

	color: #FB8400;

	text-decoration: underline;
	text-underline-offset: 3px;

	cursor: pointer;
}

.abada-jogos-legal-link:hover {
	color: #ffffff;
}


/* PREVENT PAGE SCROLL WHILE MODAL IS OPEN */

body.abada-jogos-modal-open {
	overflow: hidden;
}


/* MOBILE */

@media (max-width: 600px) {

	.abada-jogos-modal {
		padding: 10px;
	}

	.abada-jogos-modal__dialog {
		max-height: 92vh;

		border-radius: 18px;
	}

	.abada-jogos-modal__header {
		padding: 22px 20px 18px;
	}

	.abada-jogos-modal__header h2 {
		font-size: 23px;
	}

	.abada-jogos-modal__close {
		width: 38px;
		height: 38px;

		font-size: 25px;
	}

	.abada-jogos-modal__body {
		padding: 22px 20px;

		font-size: 13px;
	}

	.abada-jogos-modal__footer {
		display: grid;
		grid-template-columns: 1fr 1fr;

		padding: 16px 20px;
	}

	.abada-jogos-modal__button {
		width: 100%;
		padding-left: 12px;
		padding-right: 12px;
	}

}

/* =========================================================
   LEGAL MODAL ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â SCROLL FIX
   ========================================================= */

/* Bloqueia completamente a pÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡gina por trÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡s */
body.abada-jogos-modal-open {
	overflow: hidden !important;
	overscroll-behavior: none;
}


/* O modal ocupa sempre o viewport */
.abada-jogos-modal {
	overflow: hidden;
	overscroll-behavior: contain;
}


/* Permite que o conteÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âºdo central encolha dentro do flex */
.abada-jogos-modal__dialog {
	min-height: 0;
	overflow: hidden;
}


/* SÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³ ESTA zona faz scroll */
.abada-jogos-modal__body {
	flex: 1 1 auto;
	min-height: 0;

	overflow-y: auto !important;
	overflow-x: hidden;

	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
}

/* =========================================================
   LEGAL GUARDIAN ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â CHECKBOX TEXT FIX
========================================================= */

.abada-jogos-form__section--guardian
.abada-jogos-checkbox label,
.abada-jogos-form__section--guardian
.abada-jogos-checkbox span {
	color: #020C3B !important;
}

.abada-jogos-form__section--guardian
.abada-jogos-checkbox strong {
	color: #FB8400 !important;
}

.abada-jogos-form__section--guardian
.abada-jogos-checkbox {
	margin-top: 18px;
}

/* =========================================================
   FINAL BOARDING PASS ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â TICKET IMPROVEMENTS
========================================================= */


/* Nome legal por baixo do nome de Capoeira */

.abada-ticket__legal-name {
	display: block;

	margin-top: 6px;

	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;

	color: rgba(255, 255, 255, 0.68);
}


/* Categoria / participaÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£o / destino */

.abada-ticket__travel-details {
	display: grid;

	grid-template-columns:
		repeat(
			3,
			minmax(0, 1fr)
		);

	gap: 26px;

	margin-top: 28px;
	padding-top: 26px;

	border-top:
		1px solid
		rgba(255, 255, 255, 0.13);
}


.abada-ticket__travel-details span {
	display: block;

	margin-bottom: 7px;

	font-size: 9px;
	font-weight: 800;
	letter-spacing: 0.14em;

	color: rgba(255, 255, 255, 0.5);
}


.abada-ticket__travel-details strong {
	display: block;

	font-size: 15px;
	font-weight: 750;
	line-height: 1.3;

	color: #ffffff;
}


/* QR maior + quiet zone limpa */

.abada-ticket__qr-placeholder {
	width: 224px;
	height: 224px;

	margin:
		30px auto
		18px;

	padding: 12px;

	box-sizing: border-box;

	border-radius: 16px;

	background: #ffffff;
}


.abada-ticket__qr-placeholder img,
.abada-ticket__qr-placeholder canvas {
	display: block;

	width: 200px !important;
	height: 200px !important;

	max-width: none;
}


/* Legenda mais clara */

.abada-ticket__qr-text {
	max-width: 220px;

	font-size: 11px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: .04em;
	text-transform: uppercase;

	color: var(--ticket-navy);
}


/* =========================================================
   TABLET / MOBILE ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â QR FIRST
========================================================= */

@media (max-width: 900px) {

	/*
	 * O QR passa para cima.
	 * O corpo do boarding pass fica por baixo.
	 */

	.abada-ticket__stub {
		order: 1;
	}


	.abada-ticket__main {
		order: 2;
	}


	.abada-ticket__stub {
		min-height: auto;

		padding:
			32px 24px
			28px;
	}


	/*
	 * Como o stub estÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡ agora em cima,
	 * a perfuraÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£o passa para a base.
	 */

	.abada-ticket__stub::before {
		top: auto;
		bottom: -8px;
		left: 0;
		right: 0;

		width: 100%;
		height: 16px;

		background:
			radial-gradient(
				circle at center,
				white 0 6px,
				transparent 6.5px
			);

		background-size: 28px 16px;
		background-position: 4px center;
	}


	.abada-ticket__stub-number {
		margin-top: 18px;
		padding-top: 0;
	}


	.abada-ticket__travel-details {
		grid-template-columns: 1fr;
		gap: 18px;
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abada-ticket-page {
		padding-top: 22px;
	}


	.abada-ticket__stub {
		padding:
			28px 18px
			26px;
	}


	.abada-ticket__qr-placeholder {
		width: 224px;
		height: 224px;

		margin-top: 22px;
	}


	.abada-ticket__qr-placeholder img,
	.abada-ticket__qr-placeholder canvas {
		width: 200px !important;
		height: 200px !important;
	}


	.abada-ticket__participant > strong {
	font-size: clamp(
		22px,
		7.5vw,
		28px
	);

	line-height: 1.05;
}

}

/* =========================================================
   TICKET ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â NEXT STEPS
========================================================= */

.abada-ticket-next {
	width: calc(100% - 40px);
	max-width: 1180px;
	margin: 72px auto 40px;
	padding: 52px 44px 46px;
	box-sizing: border-box;

	background: #F7F2E8;
	border-radius: 32px;

	box-shadow:
		0 20px 60px rgba(2, 12, 59, .06);
}

.abada-ticket-next__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;

	margin-bottom: 12px;
	padding: 7px 12px;

	border-radius: 999px;

	background: #FB8400;
	color: #FFFFFF;

	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}


.abada-ticket-next__heading {
	max-width: 760px;
	margin-bottom: 34px;
}




.abada-ticket-next__heading h2 {
	margin: 0;
	font-size: clamp(32px, 4vw, 52px);
	line-height: 1;
	font-weight: 800;
	color: #020C3B;
}


.abada-ticket-next__heading p {
	max-width: 640px;
	margin: 18px 0 0;
	font-size: 16px;
	line-height: 1.65;
	color: #646A78;
}


.abada-ticket-next__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 22px;
}


.abada-ticket-next__card {
	display: flex;
	flex-direction: column;
	min-height: 330px;
	padding: 28px;
	box-sizing: border-box;
	border: 1px solid rgba(2, 12, 59, .10);
	border-radius: 24px;
	background: #FFFFFF;
	box-shadow: 0 14px 40px rgba(2, 12, 59, .07);
}


.abada-ticket-next__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 24px;
	border-radius: 16px;
	background: #F7F2E8;
	font-size: 24px;
}


.abada-ticket-next__card h3 {
	margin: 0 0 14px;
	font-size: 24px;
	line-height: 1.12;
	font-weight: 800;
	color: #020C3B;
}


.abada-ticket-next__card p {
	margin: 0 0 26px;
	font-size: 15px;
	line-height: 1.65;
	color: #626775;
}


.abada-ticket-next__button {
	width: 100%;
	margin-top: auto;
	padding: 15px 20px;
	border: 0;
	border-radius: 14px;
	font: inherit;
	font-size: 14px;
	font-weight: 800;
	text-align: center;
	background: #FB8400;
	color: #FFFFFF;
}


.abada-ticket-next__button--disabled {
	cursor: default;
	opacity: .72;
}


.abada-ticket-next__status {
	display: block;
	margin-top: 10px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .04em;
	text-align: center;
	text-transform: uppercase;
	color: #969AA5;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

	.abada-ticket-next {
	    width: 100%;
	    margin-top: 54px;
		padding-left: 20px;
		padding-right: 20px;
		max-width: 680px;
	}

	.abada-ticket-next__grid {
		grid-template-columns: 1fr;
		max-width: 650px;
	}

	.abada-ticket-next__card {
		min-height: auto;
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abada-ticket-next {
		width: 100%;
		margin-top: 42px;
		padding-left: 16px;
		padding-right: 16px;
	}

	.abada-ticket-next__heading {
		margin-bottom: 26px;
	}

	.abada-ticket-next__heading h2 {
		font-size: 34px;
	}

	.abada-ticket-next__heading p {
		font-size: 15px;
	}

	.abada-ticket-next__grid {
		gap: 16px;
	}

	.abada-ticket-next__card {
		padding: 24px;
		border-radius: 20px;
	}

	.abada-ticket-next__icon {
		width: 48px;
		height: 48px;
		margin-bottom: 20px;
	}

	.abada-ticket-next__card h3 {
		font-size: 22px;
	}

}
.abada-ticket-next__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	margin-bottom: 24px;
	border-radius: 16px;
	background: #F7F2E8;
	color: #020C3B;
}

.abada-ticket-next__icon svg {
	width: 24px;
	height: 24px;
	display: block;
}

.abada-ticket__main {
	order: 1;
}

.abada-ticket__stub {
	order: 2;
}

.abada-ticket__stub::before {
	display: none;
}

/* ==========================================
   TICKET PAGE ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â FLOATING SCROLL HINT
========================================== */

.abada-ticket-scroll-hint {
	position: fixed;
	left: 50%;
	bottom: 24px;
	transform: translateX(-50%);
	z-index: 999;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 12px 18px;
	border: 0;
	border-radius: 999px;
	background: #FB8400;
color: #ffffff;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.03em;
	cursor: pointer;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.18);
	transition:
		opacity 0.25s ease,
		transform 0.25s ease;
	animation: abadaScrollHintBounce 1.6s infinite;
}

.abada-ticket-scroll-hint:hover {
	transform: translateX(-50%) translateY(-2px);
}

.abada-ticket-scroll-hint.is-hidden {
	opacity: 0;
	pointer-events: none;
	transform: translateX(-50%) translateY(12px);
}

.abada-ticket-scroll-hint__arrow {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 999px;
	background: #ffffff;
color: #020C3B;
	font-size: 16px;
	line-height: 1;
	flex-shrink: 0;
}

@keyframes abadaScrollHintBounce {
	0%,
	100% {
		transform: translateX(-50%) translateY(0);
	}
	50% {
		transform: translateX(-50%) translateY(-6px);
	}
}

@media (max-width: 767px) {
	.abada-ticket-scroll-hint {
		bottom: 18px;
		padding: 11px 16px;
		font-size: 13px;
	}
}
/* =========================================================
   ABADAPP
========================================================= */

.abadapp {
	--app-navy: #020C3B;
	--app-navy-light: #07184D;
	--app-orange: #FB8400;
	--app-cream: #F7F2E8;
	--app-white: #FFFFFF;
	
	position: relative;
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding: 34px 24px 90px;
	box-sizing: border-box;
}


/* =========================================================
   NOTIFICATIONS ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â BACKDROP
========================================================= */

.abadapp::before {
	content: "";

	position: absolute;
	inset: 0;

	z-index: 15;

	background:
		rgba(2, 12, 59, .62);

	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);

	opacity: 0;
	visibility: hidden;

	pointer-events: none;

	transition:
		opacity .22s ease,
		visibility .22s ease;
}


.abadapp.is-notifications-open::before {
	opacity: 1;
	visibility: visible;

	pointer-events: auto;
}



/* =========================================================
   HERO
========================================================= */

.abadapp-hero {
	position: relative;
	overflow: hidden;

	padding: 34px 38px 40px;

	border-radius: 30px;

	background:
		radial-gradient(
			circle at 82% 22%,
			rgba(35, 95, 180, .40),
			transparent 34%
		),
		linear-gradient(
			135deg,
			#020C3B 0%,
			#07184D 100%
		);

	color: #FFFFFF;

	box-shadow:
		0 28px 75px rgba(2, 12, 59, .18);
}


/* subtle texture */

.abadapp-hero::before {
	content: "";

	position: absolute;
	inset: 0;

	pointer-events: none;

	background:
		linear-gradient(
			120deg,
			rgba(251, 132, 0, .05),
			transparent 35%
		);

	opacity: .8;
}


/* =========================================================
   TOP
========================================================= */

.abadapp-hero__top {
	position: relative;
	z-index: 2;

	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;

	margin-bottom: 42px;
}


.abadapp-brand {
	display: flex;
	flex-direction: column;
}


.abadapp-brand strong {
	font-size: 32px;
	font-weight: 900;
	line-height: 1;

	letter-spacing: -.04em;

	color: #FFFFFF;
}


.abadapp-brand strong span {
	color: var(--app-orange);
}


.abadapp-brand small {
	margin-top: 6px;

	font-size: 10px;
	font-weight: 800;
	letter-spacing: .14em;

	color: var(--app-orange);
}


/* =========================================================
   NOTIFICATIONS
========================================================= */

.abadapp-notifications {
	position: relative;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 46px;
	height: 46px;

	padding: 0;

	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 50%;

	background: rgba(255, 255, 255, .07);

	color: #FFFFFF;

	cursor: pointer;
}


.abadapp-notifications svg {
	width: 21px;
	height: 21px;
}


.abadapp-notifications span {
	position: absolute;

	top: 7px;
	right: 7px;

	width: 8px;
	height: 8px;

	border: 2px solid var(--app-navy);
	border-radius: 50%;

	background: var(--app-orange);
}


/* =========================================================
   NOTIFICATIONS ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â BADGE
========================================================= */

.abadapp-notifications
.abadapp-notifications__badge {
	position: absolute;

	top: -5px;
	right: -5px;

	display: flex;
	align-items: center;
	justify-content: center;

	width: auto;
	min-width: 20px;
	height: 20px;

	padding: 0 5px;

	border: 2px solid var(--app-navy);
	border-radius: 999px;

	background: var(--app-orange);

	box-sizing: border-box;

	font-size: 10px;
	font-weight: 900;
	line-height: 1;

	color: #FFFFFF;
}


.abadapp-notifications
.abadapp-notifications__badge[hidden] {
	display: none !important;
}

/* =========================================================
   NOTIFICATIONS ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PANEL
========================================================= */

.abadapp-notifications-panel[hidden] {
	display: none !important;
}


.abadapp-notifications-panel {
	position: absolute;

	top: 96px;
	right: 38px;

	z-index: 20;

	width: min(
		390px,
		calc(100% - 76px)
	);

	max-height: 430px;

	border:
		1px solid
		rgba(2, 12, 59, .10);

	border-radius: 22px;

	background: #FFFFFF;

	color: var(--app-navy);

	box-shadow:
		0 24px 70px
		rgba(2, 12, 59, .26);

	overflow: hidden;
}


/* HEADER */

.abadapp-notifications-panel__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;

	padding: 22px 22px 18px;

	border-bottom:
		1px solid
		rgba(2, 12, 59, .08);
}


.abadapp-notifications-panel__header
> div > span {
	display: block;

	margin-bottom: 4px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .15em;

	color: var(--app-orange);
}


.abadapp-notifications-panel__header h2 {
	margin: 0;

	font-size: 25px;
	font-weight: 900;
	line-height: 1.1;

	color: var(--app-navy);
}


/* CLOSE */

.abadapp-notifications-panel__close {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 auto;

	width: 36px;
	height: 36px;

	padding: 0;

	border: 0;
	border-radius: 50%;

	background:
		rgba(2, 12, 59, .06);

	font-family: inherit;
	font-size: 24px;
	font-weight: 400;
	line-height: 1;

	color: var(--app-navy);

	cursor: pointer;
}


/* LIST */

.abadapp-notifications-panel__list {
	max-height: 330px;

	padding: 14px;

	background:
		linear-gradient(
			180deg,
			#F4F7FF 0%,
			#EAF1FC 100%
		);

	overflow-y: auto;
}


/* NOTIFICATION */

.abadapp-notification-item {
	display: flex;
	align-items: flex-start;
	gap: 13px;

	padding: 16px 14px;

	border-radius: 15px;
}


.abadapp-notification-item
+ .abadapp-notification-item {
	border-top:
		1px solid
		rgba(2, 12, 59, .06);
}


.abadapp-notification-item__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 auto;

	width: 30px;
	height: 30px;

	border-radius: 10px;

	background:
		rgba(251, 132, 0, .12);

	font-size: 14px;
	font-weight: 900;

	color: var(--app-orange);
}


.abadapp-notification-item__content {
	min-width: 0;
}


.abadapp-notification-item__content p {
	margin: 3px 0 0;

	font-size: 13px;
	font-weight: 650;
	line-height: 1.55;

	color: var(--app-navy);
}


/* EMPTY STATE */

.abadapp-notifications-panel__empty {
	padding: 30px 22px 34px;

	border-radius: 16px;

	background:
		rgba(255, 255, 255, .72);

	text-align: center;
}


.abadapp-notifications-panel__empty strong {
	display: block;

	font-size: 16px;
	font-weight: 900;

	color: var(--app-navy);
}


.abadapp-notifications-panel__empty p {
	max-width: 280px;

	margin: 7px auto 0;

	font-size: 12px;
	line-height: 1.55;

	color:
		rgba(2, 12, 59, .58);
}


/* MOBILE */

@media (max-width: 600px) {

	.abadapp-notifications-panel {
		top: 84px;
		left: 16px;
		right: 16px;

		width: auto;

		max-height:
			min(430px, 70vh);

		border-radius: 18px;
	}

}


/* =========================================================
   CONTENT
========================================================= */

.abadapp-hero__content {
	position: relative;
	z-index: 2;

	display: grid;
	grid-template-columns:
		minmax(0, 1.1fr)
		minmax(300px, .9fr);

	align-items: center;
	gap: 54px;
}


.abadapp-hero__copy {
	max-width: 620px;
}


.abadapp-hero__eyebrow {
	display: inline-block;

	margin-bottom: 13px;

	font-size: 11px;
	font-weight: 900;
	letter-spacing: .15em;

	color: var(--app-orange);
}


.abadapp-hero__copy h1 {
	margin: 0;

	max-width: 680px;

	font-size: clamp(44px, 6vw, 74px);
	font-weight: 850;
	line-height: .96;
	letter-spacing: -.045em;

	color: #FFFFFF;
}


.abadapp-hero__copy p {
	max-width: 560px;

	margin: 24px 0 0;

	font-size: 16px;
	line-height: 1.7;

	color: rgba(255, 255, 255, .74);
}


/* =========================================================
   EVENT META
========================================================= */

.abadapp-event-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;

	margin-top: 30px;
}


.abadapp-event-meta > div {
	display: inline-flex;
	align-items: center;
	gap: 10px;

	padding: 11px 14px;

	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 999px;

	background: rgba(255, 255, 255, .06);
}


.abadapp-event-meta svg {
	width: 18px;
	height: 18px;

	color: var(--app-orange);
}


.abadapp-event-meta span {
	font-size: 13px;
	font-weight: 700;

	color: #FFFFFF;
}


/* =========================================================
   HERO ART
========================================================= */

.abadapp-hero__art {
	position: relative;

	display: flex;
	align-items: center;
	justify-content: center;

	min-height: 330px;
}


.abadapp-hero__art-image {
	display: block;

	width: 100%;
	max-width: 390px;
	max-height: 330px;

	object-fit: contain;

	filter:
		drop-shadow(
			0 20px 35px rgba(0, 0, 0, .22)
		);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

	.abadapp {
		padding:
			24px 18px
			70px;
	}


	.abadapp-hero {
		padding:
			30px 28px
			34px;
	}


	.abadapp-hero__content {
		grid-template-columns: 1fr;
		gap: 28px;
	}


	.abadapp-hero__art {
		min-height: 240px;
	}


	.abadapp-hero__art-image {
		max-width: 320px;
		max-height: 240px;
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp {
		padding:
			14px 12px
			60px;
	}


	.abadapp-hero {
		padding:
			24px 20px
			28px;

		border-radius: 22px;
	}


	.abadapp-hero__top {
		margin-bottom: 32px;
	}


	.abadapp-brand strong {
		font-size: 27px;
	}


	.abadapp-hero__copy h1 {
		font-size: 42px;
	}


	.abadapp-hero__copy p {
		font-size: 15px;
	}


	.abadapp-event-meta {
		flex-direction: column;
		align-items: flex-start;
	}


	.abadapp-event-meta > div {
		width: 100%;
		box-sizing: border-box;
	}


	.abadapp-hero__art {
		min-height: 220px;
	}


	.abadapp-hero__art-image {
		max-width: 270px;
		max-height: 220px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â TICKET CARD
========================================================= */

.abadapp-ticket-card {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 24px;

	margin-top: 24px;
	padding: 26px 28px;

	border: 1px solid rgba(2, 12, 59, .10);
	border-radius: 24px;

	background: #F7F2E8;

	box-shadow:
		0 16px 45px rgba(2, 12, 59, .08);

	color: #020C3B;
}


.abadapp-ticket-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 58px;
	height: 58px;

	flex: 0 0 58px;

	border-radius: 18px;

	background: #FB8400;
	color: #FFFFFF;
}


.abadapp-ticket-card__icon svg {
	display: block;

	width: 28px;
	height: 28px;
}


.abadapp-ticket-card__content {
	min-width: 0;
}


.abadapp-ticket-card__eyebrow {
	display: block;

	margin-bottom: 6px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .15em;

	color: #FB8400;
}


.abadapp-ticket-card__content h2 {
	margin: 0;

	font-size: 28px;
	font-weight: 850;
	line-height: 1.05;

	color: #020C3B;
}


.abadapp-ticket-card__content p {
	max-width: 520px;

	margin: 9px 0 0;

	font-size: 14px;
	line-height: 1.55;

	color: #666B78;
}


.abadapp-ticket-card__action {
	display: flex;
	flex-direction: column;
	align-items: flex-end;

	min-width: 190px;
}


.abadapp-ticket-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;

	min-height: 50px;
	padding: 0 20px;

	border-radius: 14px;

	background: #FB8400;

	font-size: 13px;
	font-weight: 850;
	text-decoration: none;

	color: #FFFFFF;

	box-sizing: border-box;
}


.abadapp-ticket-card__button:hover {
	color: #FFFFFF;
	transform: translateY(-1px);
}


.abadapp-ticket-card__button span {
	font-size: 19px;
	line-height: 1;
}


.abadapp-ticket-card__button--disabled {
	opacity: .55;
	cursor: default;
}


.abadapp-ticket-card__help {
	max-width: 190px;

	margin-top: 8px;

	font-size: 10px;
	line-height: 1.4;
	text-align: right;

	color: #8A8E99;
}


/* =========================================================
   TABLET / MOBILE
========================================================= */

@media (max-width: 760px) {

	.abadapp-ticket-card {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 18px;

		padding: 22px;
	}


	.abadapp-ticket-card__action {
		grid-column: 1 / -1;

		width: 100%;
		min-width: 0;

		align-items: stretch;
	}


	.abadapp-ticket-card__button {
		width: 100%;
	}


	.abadapp-ticket-card__help {
		max-width: none;

		text-align: center;
	}

}


@media (max-width: 480px) {

	.abadapp-ticket-card {
		grid-template-columns: 1fr;

		padding: 20px;

		border-radius: 20px;
	}


	.abadapp-ticket-card__icon {
		width: 52px;
		height: 52px;

		flex-basis: 52px;

		border-radius: 16px;
	}


	.abadapp-ticket-card__content h2 {
		font-size: 25px;
	}


	.abadapp-ticket-card__action {
		grid-column: auto;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â UPCOMING
========================================================= */

.abadapp-upcoming {
	margin-top: 26px;
	padding: 30px;

	border-radius: 24px;

	background: #020C3B;

	box-shadow:
		0 18px 50px rgba(2, 12, 59, .10);

	color: #FFFFFF;
}


.abadapp-upcoming__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px;

	margin-bottom: 24px;
}


.abadapp-upcoming__eyebrow {
	display: block;

	margin-bottom: 6px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .15em;

	color: #FB8400;
}


.abadapp-upcoming__header h2 {
	margin: 0;

	font-size: 30px;
	font-weight: 850;
	line-height: 1.05;

	color: #FFFFFF;
}


.abadapp-upcoming__all {
	display: inline-flex;
	align-items: center;
	gap: 8px;

	font-size: 12px;
	font-weight: 800;
	text-decoration: none;

	color: #FB8400;
}


.abadapp-upcoming__all:hover {
	color: #FFFFFF;
}


.abadapp-upcoming__list {
	display: grid;
	gap: 10px;
}


.abadapp-upcoming__item {
	display: grid;
	grid-template-columns: 76px minmax(0, 1fr);
	align-items: center;
	gap: 18px;

	padding: 16px 18px;

	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 16px;

	background: rgba(255, 255, 255, .055);
}


.abadapp-upcoming__time {
	font-size: 15px;
	font-weight: 900;

	color: #FB8400;
}


.abadapp-upcoming__content {
	display: flex;
	flex-direction: column;
	gap: 3px;
}


.abadapp-upcoming__content strong {
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;

	color: #FFFFFF;
}


.abadapp-upcoming__content span {
	font-size: 12px;
	line-height: 1.4;

	color: rgba(255, 255, 255, .62);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp-upcoming {
		margin-top: 18px;
		padding: 22px;

		border-radius: 20px;
	}


	.abadapp-upcoming__header {
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}


	.abadapp-upcoming__header h2 {
		font-size: 26px;
	}


	.abadapp-upcoming__item {
		grid-template-columns: 62px minmax(0, 1fr);

		padding: 14px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ALERTS
========================================================= */

.abadapp-alerts {
	margin-top: 22px;
}


.abadapp-alerts__header {
	margin-bottom: 14px;
}


.abadapp-alerts__eyebrow {
	display: block;

	margin-bottom: 5px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .15em;

	color: #FB8400;
}


.abadapp-alerts__header h2 {
	margin: 0;

	font-size: 27px;
	font-weight: 850;
	line-height: 1.1;

	color: #020C3B;
}


.abadapp-alerts__list {
	display: grid;
	gap: 12px;
}


.abadapp-alerts__item {
	display: grid;
	grid-template-columns:
		auto
		minmax(0, 1fr)
		auto;

	align-items: center;
	gap: 16px;

	padding: 18px;

	border: 1px solid rgba(2, 12, 59, .09);
	border-radius: 18px;

	background: #F7F2E8;

	box-shadow:
		0 12px 34px rgba(2, 12, 59, .06);
}


.abadapp-alerts__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 46px;
	height: 46px;

	border-radius: 14px;

	background: rgba(251, 132, 0, .13);

	color: #FB8400;
}


.abadapp-alerts__icon svg {
	width: 22px;
	height: 22px;
}


.abadapp-alerts__content strong {
	display: block;

	margin-bottom: 4px;

	font-size: 15px;
	font-weight: 850;

	color: #020C3B;
}


.abadapp-alerts__content p {
	margin: 0;

	font-size: 13px;
	line-height: 1.5;

	color: #666B78;
}


.abadapp-alerts__arrow {
	font-size: 22px;
	font-weight: 700;

	color: #FB8400;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp-alerts {
		margin-top: 18px;
	}


	.abadapp-alerts__header h2 {
		font-size: 24px;
	}


	.abadapp-alerts__item {
		grid-template-columns:
			auto
			minmax(0, 1fr);

		padding: 16px;
	}


	.abadapp-alerts__arrow {
		display: none;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â BOTTOM NAVIGATION
========================================================= */

.abadapp-nav {
	position: fixed !important;

	left: 16px !important;
	right: 16px !important;

	bottom: max(
		0px,
		env(safe-area-inset-bottom)
	) !important;

	transform: none !important;

	z-index: 99999 !important;

	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));

	width: auto !important;
	max-width: 588px;

	margin-left: auto;
	margin-right: auto;

	padding: 8px 10px;

	box-sizing: border-box;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 22px;

	background: rgba(2,12,59,.96);

	box-shadow:
		0 16px 45px rgba(2,12,59,.28);

	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}


.abadapp-nav__item {
	position: relative;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 4px;

	min-width: 0;
	min-height: 54px;

	padding: 4px;

	border-radius: 14px;

	text-decoration: none;

	color: rgba(255, 255, 255, .64);

	transition:
		color .2s ease,
		background .2s ease,
		transform .2s ease;
}


.abadapp-nav__item svg {
	display: block;

	width: 21px;
	height: 21px;
}


.abadapp-nav__item > span:last-child {
	font-size: 9px;
	font-weight: 750;
	line-height: 1;
}


.abadapp-nav__item:hover,
.abadapp-nav__item.is-active {
	color: #FB8400;
}


.abadapp-nav__item.is-active {
	background: rgba(251, 132, 0, .08);
}


/* =========================================================
   CENTER TICKET
========================================================= */

.abadapp-nav__item--ticket {
	margin-top: -26px;

	color: #FFFFFF;
}


.abadapp-nav__ticket-circle {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 54px;
	height: 54px;

	border: 5px solid #FFFFFF;
	border-radius: 50%;

	background: #FB8400;

	color: #FFFFFF;

	box-shadow:
		0 8px 24px rgba(251, 132, 0, .28);
}


.abadapp-nav__ticket-circle svg {
	width: 24px;
	height: 24px;
}


.abadapp-nav__item--ticket:hover {
	color: #FB8400;
}


.abadapp-nav__item.is-disabled {
	opacity: .45;
	cursor: default;
}


/* give page enough room behind fixed nav */

.abadapp {
	padding-bottom: 130px;
}


/* =========================================================
   DESKTOP
========================================================= */

@media (min-width: 901px) {

	.abadapp-nav {
		bottom: 24px;
	}

}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 390px) {

	.abadapp-nav {
		width: calc(100% - 18px);

		padding-left: 6px;
		padding-right: 6px;
	}


	.abadapp-nav__item > span:last-child {
		font-size: 8px;
	}


	.abadapp-nav__ticket-circle {
		width: 50px;
		height: 50px;
	}

}

@media (max-width: 600px) {

	.abadapp-nav {
		bottom: 8px;

		width: calc(100% - 20px);

		padding:
			6px 8px;

		border-radius: 20px;
	}


	.abadapp-nav__item {
		min-height: 50px;
	}


	.abadapp-nav__item--ticket {
		margin-top: -18px;
	}


	.abadapp-nav__ticket-circle {
		width: 48px;
		height: 48px;

		border-width: 4px;
	}


	.abadapp-nav__ticket-circle svg {
		width: 21px;
		height: 21px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â BOTTOM NAV FIX
========================================================= */

.abadapp-nav {
	position: fixed !important;

	left: 50% !important;
	bottom: 10px !important;

	transform: translateX(-50%) !important;

	/* Sempre acima do footer/theme */
	z-index: 2147483000 !important;

	/* Fundo 100% sÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³lido */
	background: #020C3B !important;

	/* Nada de transparÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âªncias */
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;

	border: 1px solid rgba(255, 255, 255, .14) !important;

	box-shadow:
		0 14px 38px rgba(2, 12, 59, .32) !important;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â SOLID NAV ICONS FIX
========================================================= */

.abadapp-nav__item {
	opacity: 1 !important;
}

.abadapp-nav__item svg {
	opacity: 1 !important;
}

.abadapp-nav__item--ticket {
	opacity: 1 !important;
	color: #FFFFFF !important;
}

.abadapp-nav__ticket-circle {
	background: #FB8400 !important;
	color: #FFFFFF !important;

	opacity: 1 !important;

	border: 4px solid #FFFFFF !important;

	box-shadow:
		0 8px 22px rgba(251, 132, 0, .28) !important;
}

.abadapp-nav__ticket-circle svg {
	color: #FFFFFF !important;
	stroke: #FFFFFF !important;
	opacity: 1 !important;
}

.abadapp-nav__item.is-active {
	color: #FB8400 !important;
}

.abadapp-nav__item:not(.is-active):not(.abadapp-nav__item--ticket) {
	color: rgba(255, 255, 255, .72) !important;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PROGRAM SCREEN
========================================================= */

.abadapp-program {

	padding: 30px 28px 120px;

	box-sizing: border-box;

	color: #FFFFFF;

	background: #020C3B;
}


.abadapp-program[hidden] {
	display: none !important;
}


/* HEADER */

.abadapp-program__back {
	display: inline-flex;
	align-items: center;
	margin: 0 0 24px;
	padding: 0;
	border: 0;
	background: transparent;
	font: inherit;
	font-size: 13px;
	font-weight: 800;
	color: #FFFFFF;
	cursor: pointer;
}

.abadapp-program__eyebrow {
	display: block;

	margin-bottom: 8px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .15em;

	color: #FB8400;
}


.abadapp-program__top h2 {
	margin: 0;

	font-size: clamp(34px, 5vw, 52px);
	font-weight: 850;
	line-height: 1;

	color: #FFFFFF;
}


.abadapp-program__top p {
	max-width: 560px;

	margin: 14px 0 0;

	font-size: 14px;
	line-height: 1.55;

	color: rgba(255,255,255,.68);
}


/* DAYS */

.abadapp-program__days {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 8px;

	margin-top: 30px;
}


.abadapp-program__day {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	min-height: 70px;

	padding: 9px 4px;

	border: 1px solid rgba(255,255,255,.12);
	border-radius: 15px;

	background: rgba(255,255,255,.055);

	color: #FFFFFF;

	cursor: pointer;
}


.abadapp-program__day span {
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .08em;

	color: rgba(255,255,255,.55);
}


.abadapp-program__day strong {
	margin-top: 3px;

	font-size: 19px;
	font-weight: 900;
}


.abadapp-program__day.is-active {
	border-color: #FB8400;

	background: #FB8400;
}


.abadapp-program__day.is-active span {
	color: rgba(255,255,255,.82);
}


/* DATE TITLE */

.abadapp-program__section-title {
	margin-top: 34px;
}


.abadapp-program__section-title span {
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .14em;

	color: #FB8400;
}


.abadapp-program__section-title h3 {
	margin: 4px 0 0;

	font-size: 25px;
	font-weight: 850;

	color: #FFFFFF;
}


/* TIMELINE */

.abadapp-program__timeline {
	display: grid;
	gap: 12px;

	margin-top: 18px;
}


.abadapp-program-event {
	display: grid;
	grid-template-columns: 65px minmax(0,1fr);
	gap: 16px;

	padding: 18px;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 18px;

	background: rgba(255,255,255,.06);
}


.abadapp-program-event__time {
	padding-top: 2px;

	font-size: 15px;
	font-weight: 900;

	color: #FB8400;
}


.abadapp-program-event__type {
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .13em;

	color: rgba(255,255,255,.48);
}


.abadapp-program-event h4 {
	margin: 5px 0 6px;

	font-size: 17px;
	font-weight: 850;

	color: #FFFFFF;
}


.abadapp-program-event p {
	margin: 0;

	font-size: 12px;
	line-height: 1.5;

	color: rgba(255,255,255,.65);
}


.abadapp-program-event__meta {
	margin-top: 11px;

	font-size: 11px;
	font-weight: 700;

	color: #FFFFFF;
}


/* INFORMATION */

.abadapp-program__useful {
	margin-top: 36px;
}


.abadapp-program__useful h3 {
	margin: 0 0 15px;

	font-size: 22px;
	font-weight: 850;

	color: #FFFFFF;
}


.abadapp-program__useful-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0,1fr));
	gap: 10px;
}


.abadapp-program__useful-grid button {
	display: flex;
	align-items: center;
	gap: 12px;

	min-height: 58px;

	padding: 13px 15px;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 15px;

	background: rgba(255,255,255,.06);

	font-family: inherit;
	text-align: left;

	color: #FFFFFF;

	cursor: pointer;
}


.abadapp-program__useful-grid button > span {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 31px;
	height: 31px;

	flex: 0 0 31px;

	border-radius: 10px;

	background: rgba(251,132,0,.14);

	font-size: 16px;

	color: #FB8400;
}


.abadapp-program__useful-grid strong {
	font-size: 12px;
	font-weight: 800;
}


.abadapp-program__useful-grid
.abadapp-program__emergency {

	border-color: rgba(220,70,70,.26);

	background: rgba(180,35,24,.14);
}


.abadapp-program__emergency > span {
	background: rgba(220,70,70,.18) !important;

	color: #FF7770 !important;
}


/* MOBILE */

@media (max-width: 600px) {

	.abadapp-program {
		padding:
			26px 20px
			120px;
	}


	.abadapp-program__top h2 {
		font-size: 36px;
	}


	.abadapp-program__days {
		gap: 6px;
	}


	.abadapp-program__day {
		min-height: 62px;

		border-radius: 13px;
	}


	.abadapp-program-event {
		grid-template-columns: 55px minmax(0,1fr);

		padding: 15px;

		border-radius: 16px;
	}


	.abadapp-program__useful-grid {
		grid-template-columns: 1fr;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â INFO SCREEN / LOCATIONS
========================================================= */

.abadapp-info-screen {
	min-height: 100vh;
	padding: 28px 28px 120px;
	box-sizing: border-box;
	background: #020C3B;
	color: #FFFFFF;
}

.abadapp-info-screen[hidden] {
	display: none !important;
}

.abadapp-info-screen__back {
	margin: 0 0 30px;
	padding: 0;

	border: 0;
	background: transparent;

	font-family: inherit;
	font-size: 12px;
	font-weight: 800;

	color: #FFFFFF;

	cursor: pointer;
}

.abadapp-info-screen__eyebrow {
	display: block;

	margin-bottom: 8px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .14em;

	color: #FB8400;
}

.abadapp-info-screen__header h2 {
	margin: 0;

	font-size: 38px;
	font-weight: 850;
	line-height: 1.05;

	color: #FFFFFF;
}

.abadapp-info-screen__header p {
	max-width: 560px;

	margin: 14px 0 0;

	font-size: 14px;
	line-height: 1.55;

	color: rgba(255,255,255,.68);
}

.abadapp-location-list {
	display: grid;
	gap: 14px;

	margin-top: 30px;
}

.abadapp-location-card {
	padding: 22px;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 20px;

	background: rgba(255,255,255,.06);
}

.abadapp-location-card__number {
	display: block;

	margin-bottom: 8px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .14em;

	color: #FB8400;
}

.abadapp-location-card h3 {
	margin: 0 0 10px;

	font-size: 22px;
	font-weight: 850;

	color: #FFFFFF;
}

.abadapp-location-card p {
	margin: 0;

	font-size: 13px;
	line-height: 1.6;

	color: rgba(255,255,255,.72);
}

.abadapp-location-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	margin-top: 18px;
	padding: 12px 16px;

	border-radius: 12px;

	background: #FB8400;

	font-size: 12px;
	font-weight: 850;
	text-decoration: none;

	color: #FFFFFF !important;
}

.abadapp-location-card--pending {
	border-style: dashed;
	opacity: .76;
}

.abadapp-location-card__status {
	display: inline-block;

	margin-top: 16px;
	padding: 7px 10px;

	border-radius: 999px;

	background: rgba(255,255,255,.08);

	font-size: 10px;
	font-weight: 800;

	color: rgba(255,255,255,.70);
}

@media (max-width: 600px) {

	.abadapp-info-screen {
		padding: 24px 20px 120px;
	}

	.abadapp-info-screen__header h2 {
		font-size: 34px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â TRANSPORT SCREEN
========================================================= */

.abadapp-transport-list {
	display: grid;
	gap: 14px;

	margin-top: 30px;
}


.abadapp-transport-card {
	display: grid;
	grid-template-columns: 46px minmax(0, 1fr);
	gap: 16px;

	padding: 20px;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 20px;

	background: rgba(255,255,255,.06);
}


.abadapp-transport-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 42px;
	height: 42px;

	border-radius: 13px;

	background: rgba(251,132,0,.14);

	font-size: 18px;
	font-weight: 900;

	color: #FB8400;
}


.abadapp-transport-card__eyebrow {
	display: block;

	margin-bottom: 6px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .13em;

	color: #FB8400;
}


.abadapp-transport-card h3 {
	margin: 0 0 8px;

	font-size: 19px;
	font-weight: 850;

	color: #FFFFFF;
}


.abadapp-transport-card p {
	margin: 0;

	font-size: 12px;
	line-height: 1.55;

	color: rgba(255,255,255,.68);
}


.abadapp-transport-card--highlight {
	border-color: rgba(251,132,0,.26);

	background:
		linear-gradient(
			135deg,
			rgba(251,132,0,.11),
			rgba(255,255,255,.045)
		);
}


@media (max-width: 600px) {

	.abadapp-transport-card {
		grid-template-columns: 40px minmax(0,1fr);

		gap: 13px;

		padding: 17px;
	}


	.abadapp-transport-card__icon {
		width: 38px;
		height: 38px;

		border-radius: 11px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â LOCATION TRANSPORT DETAILS
========================================================= */

.abadapp-location-transport {
	display: grid;
	gap: 10px;

	margin-top: 20px;
	padding-top: 18px;

	border-top: 1px solid rgba(255,255,255,.10);
}


.abadapp-location-transport__item {
	padding: 14px 15px;

	border-radius: 14px;

	background: rgba(255,255,255,.045);
}


.abadapp-location-transport__label {
	display: block;

	margin-bottom: 5px;

	font-size: 8px;
	font-weight: 900;
	letter-spacing: .14em;

	color: #FB8400;
}


.abadapp-location-transport__item strong {
	display: block;

	margin-bottom: 5px;

	font-size: 13px;
	font-weight: 850;

	color: #FFFFFF;
}


.abadapp-location-transport__item p {
	margin: 0;

	font-size: 11px;
	line-height: 1.5;

	color: rgba(255,255,255,.62);
}


@media (max-width: 600px) {

	.abadapp-info-screen__header h2 {
		font-size: 38px !important;
		line-height: 1.08 !important;
	}

	.abadapp-info-screen__header p {
		font-size: 16px !important;
		line-height: 1.55 !important;
	}

	.abadapp-info-screen__back {
		font-size: 14px !important;
	}

	.abadapp-info-screen__eyebrow {
		font-size: 11px !important;
	}

	.abadapp-location-card__number {
		font-size: 11px !important;
	}

	.abadapp-location-card h3 {
		font-size: 23px !important;
		line-height: 1.2 !important;
	}

	.abadapp-location-card p {
		font-size: 15px !important;
		line-height: 1.5 !important;
	}

	.abadapp-location-card__status {
		font-size: 12px !important;
	}

	.abadapp-location-transport__label {
		font-size: 11px !important;
	}

	.abadapp-location-transport__item strong {
		font-size: 16px !important;
		line-height: 1.3 !important;
	}

	.abadapp-location-transport__item p {
		font-size: 14px !important;
		line-height: 1.55 !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â FAQs
========================================================= */

.abadapp-faq-list {
	display: grid;
	gap: 12px;

	margin-top: 28px;
}


.abadapp-faq-item {
	border: 1px solid rgba(255,255,255,.10);
	border-radius: 18px;

	background: rgba(255,255,255,.06);

	overflow: hidden;
}


.abadapp-faq-item summary {
	position: relative;

	padding: 18px 48px 18px 18px;

	font-size: 16px;
	font-weight: 750;
	line-height: 1.35;

	color: #FFFFFF;

	cursor: pointer;

	list-style: none;
}


.abadapp-faq-item summary::-webkit-details-marker {
	display: none;
}


.abadapp-faq-item summary::after {
	content: '+';

	position: absolute;

	top: 50%;
	right: 18px;

	transform: translateY(-50%);

	font-size: 24px;
	font-weight: 400;
	line-height: 1;

	color: #FB8400;
}


.abadapp-faq-item[open] summary::after {
    content: '-';
}


.abadapp-faq-item[open] summary {
	border-bottom: 1px solid rgba(255,255,255,.08);
}


.abadapp-faq-item p {
	margin: 0;

	padding: 16px 18px 18px;

	font-size: 14px;
	font-weight: 400;
	line-height: 1.65;

	color: rgba(255,255,255,.72);
}


@media (max-width: 600px) {

	.abadapp-faq-list {
		margin-top: 24px;
		gap: 10px;
	}

	.abadapp-faq-item summary {
		padding: 18px 46px 18px 17px;

		font-size: 16px;
		line-height: 1.4;
	}

	.abadapp-faq-item p {
		padding: 16px 17px 18px;

		font-size: 15px;
		line-height: 1.6;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â FAQ SMOOTH OPEN
========================================================= */

.abadapp-faq-item {
	overflow: hidden;
}

.abadapp-faq-item p {
	max-height: 0;
	opacity: 0;
	overflow: hidden;

	margin: 0;
	padding-top: 0;
	padding-bottom: 0;

	transition:
		max-height .35s ease,
		opacity .25s ease,
		padding .35s ease;
}

.abadapp-faq-item[open] p {
	max-height: 300px;
	opacity: 1;

	padding-top: 16px;
	padding-bottom: 18px;
}

@media (max-width: 600px) {

	.abadapp-faq-item summary {
		font-size: 14px !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â CONTACTOS
========================================================= */

.abadapp-contact-list {
	display: grid;
	gap: 14px;

	margin-top: 28px;
}


.abadapp-contact-card {
	padding: 22px;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 20px;

	background: rgba(255,255,255,.06);
}


.abadapp-contact-card__label {
	display: block;

	margin-bottom: 8px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .14em;

	color: #FB8400;
}


.abadapp-contact-card h3 {
	margin: 0 0 8px;

	font-size: 22px;
	font-weight: 750;

	color: #FFFFFF;
}


.abadapp-contact-card p {
	margin: 0;

	font-size: 14px;
	line-height: 1.6;

	color: rgba(255,255,255,.70);
}


.abadapp-contact-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	margin-top: 18px;
	padding: 12px 16px;

	border-radius: 12px;

	background: #FB8400;

	font-size: 13px;
	font-weight: 800;

	text-decoration: none;

	color: #FFFFFF !important;
}


.abadapp-contact-card__button--secondary {
	background: rgba(255,255,255,.10);

	border: 1px solid rgba(255,255,255,.15);
}


.abadapp-contact-card small {
	display: block;

	margin-top: 12px;

	font-size: 12px;
	line-height: 1.45;

	color: rgba(255,255,255,.55);

	word-break: break-word;
}


@media (max-width: 600px) {

	.abadapp-contact-list {
		margin-top: 24px;
	}

	.abadapp-contact-card {
		padding: 20px;
	}

	.abadapp-contact-card h3 {
		font-size: 23px;
	}

	.abadapp-contact-card p {
		font-size: 15px;
	}

	.abadapp-contact-card__button {
		width: 100%;
		box-sizing: border-box;

		font-size: 14px;
	}

	.abadapp-contact-card small {
		font-size: 13px;
	}

}
/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â FINAL LAYOUT FIX
   ========================================================= */

/*
 * NÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£o forÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§ar 100vh / 100dvh.
 * As pÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡ginas internas devem ter apenas a altura do conteÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âºdo.
 */

html,
body {
	background: #020C3B !important;
}

body {
	margin: 0;
}


/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â MAIN WRAPPER
========================================================= */

.abadapp {
	min-height: 0 !important;
	height: auto !important;

	padding-bottom: 110px;

	background: #020C3B;

	transform: none !important;
	filter: none !important;
	perspective: none !important;
	contain: none !important;
}


/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PROGRAM + INFO SCREENS
========================================================= */

.abadapp-program,
.abadapp-info-screen {
	min-height: 0 !important;
	height: auto !important;

	box-sizing: border-box;

	background: #020C3B !important;
	color: #FFFFFF;
}


/* EspaÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§o apenas para o menu inferior */

.abadapp-program {
	padding-bottom: 110px !important;
}

.abadapp-info-screen {
	padding-bottom: 110px !important;
}


/* Esconder corretamente ecrÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£s inativos */

.abadapp-program[hidden],
.abadapp-info-screen[hidden] {
	display: none !important;
}


/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â BOTTOM NAVIGATION
========================================================= */

.abadapp-nav {
	position: fixed !important;

	left: 16px !important;
	right: 16px !important;
	bottom: 8px !important;

	width: auto !important;
	max-width: 588px !important;

	margin-left: auto !important;
	margin-right: auto !important;

	transform: none !important;

	z-index: 2147483000 !important;

	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));

	padding: 6px 8px;

	box-sizing: border-box;

	border: 1px solid rgba(255, 255, 255, .14) !important;
	border-radius: 20px;

	background: #020C3B !important;

	box-shadow:
		0 14px 38px rgba(2, 12, 59, .32) !important;

	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
}


/* =========================================================
   NAV ITEMS
========================================================= */

.abadapp-nav__item {
	position: relative;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	gap: 4px;

	min-width: 0;
	min-height: 50px;

	padding: 4px;

	border-radius: 14px;

	text-decoration: none;

	color: rgba(255, 255, 255, .72) !important;

	opacity: 1 !important;
}


.abadapp-nav__item svg {
	display: block;

	width: 21px;
	height: 21px;

	opacity: 1 !important;
}


.abadapp-nav__item > span:last-child {
	font-size: 9px;
	font-weight: 750;
	line-height: 1;
}


.abadapp-nav__item:hover,
.abadapp-nav__item.is-active {
	color: #FB8400 !important;
}


.abadapp-nav__item.is-active {
	background: rgba(251, 132, 0, .08);
}


/* =========================================================
   CENTER TICKET
========================================================= */

.abadapp-nav__item--ticket {
	margin-top: -18px;

	color: #FFFFFF !important;

	opacity: 1 !important;
}


.abadapp-nav__ticket-circle {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 48px;
	height: 48px;

	border: 4px solid #FFFFFF !important;
	border-radius: 50%;

	background: #FB8400 !important;

	color: #FFFFFF !important;

	opacity: 1 !important;

	box-shadow:
		0 8px 22px rgba(251, 132, 0, .28) !important;
}


.abadapp-nav__ticket-circle svg {
	width: 21px;
	height: 21px;

	color: #FFFFFF !important;
	stroke: #FFFFFF !important;

	opacity: 1 !important;
}


/* =========================================================
   CONTACTOS
========================================================= */

#abadappContact {
	min-height: 0 !important;
	height: auto !important;

	margin: 0 !important;

	padding-bottom: 110px !important;
}


#abadappContact .abadapp-info-screen__header {
    margin-bottom: 24px !important;
}

#abadappContact .abadapp-contact-list {
    margin-bottom: 0 !important;
}


/* =========================================================
   EMERGÃƒÆ’Ã†â€™Ãƒâ€¦ NCIA
========================================================= */

#abadappEmergency {
	min-height: 0 !important;
	height: auto !important;

	margin: 0 !important;

	padding-bottom: 110px !important;
}


.abadapp-emergency .abadapp-info-screen__header {
	margin-bottom: 18px;
}


.abadapp-emergency .abadapp-info-screen__header h2 {
	margin-bottom: 10px;

	font-size: 38px;
	line-height: 1;
}


.abadapp-emergency .abadapp-info-screen__header p {
	margin-bottom: 0;

	font-size: 15px;
	line-height: 1.45;
}


.abadapp-emergency__list {
	display: grid;

	gap: 14px;

	margin-top: 18px;
}


.abadapp-emergency-card {
	padding: 18px;

	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 20px;

	background: rgba(255, 255, 255, .06);

	box-shadow:
		0 18px 45px rgba(2, 12, 59, .14);
}


.abadapp-emergency-card--urgent {
	border-color: rgba(251, 132, 0, .45);

	background: #F7F2E8;

	color: #020C3B;
}


.abadapp-emergency-card__label {
	display: block;

	margin-bottom: 6px;

	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;

	color: #FB8400;
}


.abadapp-emergency-card h3 {
	margin: 0 0 8px;

	font-size: 22px;
	line-height: 1.08;
}


.abadapp-emergency-card--urgent h3 {
	margin-bottom: 8px;

	font-size: 38px;
}


.abadapp-emergency-card p {
	margin: 0 0 14px;

	font-size: 14px;
	line-height: 1.45;

	opacity: .88;
}


.abadapp-emergency-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-height: 42px;

	padding: 0 15px;

	border-radius: 12px;

	background: #FB8400;

	font-size: 14px;
	font-weight: 800;

	color: #020C3B !important;

	text-decoration: none !important;
}


.abadapp-emergency-card__button--secondary {
	background: #235FB4;

	color: #FFFFFF !important;
}


.abadapp-emergency-card__status {
	display: inline-block;

	padding: 6px 10px;

	border-radius: 999px;

	background: rgba(251, 132, 0, .12);

	font-size: 11px;
	font-weight: 800;

	color: #FB8400;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp {
		padding-bottom: 100px;
	}


	.abadapp-program,
	.abadapp-info-screen,
	#abadappContact,
	#abadappEmergency {
		min-height: 0 !important;
		height: auto !important;

		padding-bottom: 100px !important;
	}


	.abadapp-nav {
		left: 10px !important;
		right: 10px !important;
		bottom: 8px !important;

		width: auto !important;

		padding: 6px 8px;

		border-radius: 20px;
	}


	.abadapp-nav__item {
		min-height: 50px;
	}


	.abadapp-nav__item--ticket {
		margin-top: -18px;
	}


	.abadapp-nav__ticket-circle {
		width: 48px;
		height: 48px;
	}

}


/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 390px) {

	.abadapp-nav {
		left: 8px !important;
		right: 8px !important;
	}


	.abadapp-nav__item > span:last-child {
		font-size: 8px;
	}


	.abadapp-nav__ticket-circle {
		width: 46px;
		height: 46px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â UNIFORM INTERNAL SCREENS
========================================================= */

.abadapp-program,
.abadapp-info-screen {
	min-height: 0 !important;
	height: auto !important;

	margin: 0 !important;

	padding:
		24px
		20px
		110px !important;

	box-sizing: border-box;

	background: #020C3B !important;
}


/* Todos os headers comeÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§am igual */

.abadapp-program__top,
.abadapp-info-screen__header {
	margin: 0 0 24px !important;
	padding: 0 !important;
}


/* Evitar margens diferentes entre ecrÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£s */

.abadapp-location-list,
.abadapp-faq-list,
.abadapp-contact-list,
.abadapp-emergency__list,
.abadapp-location-transport {
	margin-top: 0 !important;
}


/* EmergÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âªncia */

#abadappEmergency {
	padding-top: 24px !important;
}


/* Contactos */

#abadappContact {
	padding-top: 24px !important;
}


/* Locations */

#abadappLocations {
	padding-top: 24px !important;
}


/* FAQ */

#abadappFaq {
	padding-top: 24px !important;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â FORCE SAME TOP POSITION ON ALL INTERNAL SCREENS
========================================================= */

#abadappProgram,
#abadappLocations,
#abadappFaq,
#abadappContact,
#abadappEmergency {
	padding-top: 24px !important;
	margin-top: 0 !important;

	min-height: 0 !important;
	height: auto !important;

	align-self: start !important;
}


/* Remove qualquer deslocamento herdado dos headers */

#abadappProgram .abadapp-program__top,
#abadappLocations .abadapp-info-screen__header,
#abadappFaq .abadapp-info-screen__header,
#abadappContact .abadapp-info-screen__header,
#abadappEmergency .abadapp-info-screen__header {
	margin-top: 0 !important;
	padding-top: 0 !important;
}


/* O botÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£o voltar tambÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â©m comeÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§a sempre no mesmo sÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­tio */

#abadappLocations .abadapp-info-screen__back,
#abadappFaq .abadapp-info-screen__back,
#abadappContact .abadapp-info-screen__back,
#abadappEmergency .abadapp-info-screen__back {
	margin-top: 0 !important;
}

#abadappEmergency {
	padding-top: 24px !important;
	margin-top: 0 !important;
}

#abadappEmergency .abadapp-info-screen__header {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

#abadappEmergency .abadapp-info-screen__back {
	margin-top: 0 !important;
}

#abadappEmergency .abadapp-emergency__list {
	margin-top: 0 !important;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â STOP ELEMENTOR VERTICAL CENTERING
========================================================= */

.e-con:has(.abadapp),
.elementor-section:has(.abadapp),
.elementor-column:has(.abadapp) {
	justify-content: flex-start !important;
	align-items: stretch !important;
	min-height: 0 !important;
	height: auto !important;
}

.elementor-widget-shortcode:has(.abadapp),
.elementor-widget-shortcode:has(.abadapp) > .elementor-widget-container,
.elementor-shortcode:has(.abadapp) {
	align-self: stretch !important;
	width: 100% !important;
	min-height: 0 !important;
	height: auto !important;
	margin-top: 0 !important;
	padding-top: 0 !important;
}
/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â EMERGENCY FORCE TOP
========================================================= */

#abadappEmergency {
	position: relative !important;

	top: 0 !important;

	align-self: flex-start !important;

	min-height: 0 !important;
	height: auto !important;

	margin-top: 0 !important;
	margin-bottom: 0 !important;

	padding-top: 24px !important;

	transform: none !important;
}


/* garante que nada dentro dela cria espaÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§o superior */

#abadappEmergency > :first-child {
	margin-top: 0 !important;
	padding-top: 0 !important;
}


/* header comeÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§a imediatamente */

#abadappEmergency .abadapp-info-screen__header {
	margin-top: 0 !important;
	padding-top: 0 !important;
}


/* botÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£o voltar */

#abadappEmergency .abadapp-info-screen__back {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â ALOJAMENTO COMPACTO
========================================================= */

#abadappAccommodation {
	padding-bottom: 110px !important;
}

#abadappAccommodation .abadapp-info-screen__header {
	margin-bottom: 22px !important;
}

.abadapp-accommodation-list {
	display: grid;
	gap: 14px;
	margin-top: 0 !important;
}

.abadapp-accommodation-card {
	padding: 18px 20px;
	border: 1px solid rgba(255,255,255,.10);
	border-radius: 18px;
	background: rgba(255,255,255,.05);
}

.abadapp-accommodation-card--highlight {
	background: #F7F2E8;
	color: #020C3B;
	border-color: transparent;
}

.abadapp-accommodation-card__label {
	display: block;
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .12em;
	color: #FB8400;
}

.abadapp-accommodation-card h3 {
	margin: 0 0 10px !important;
	font-size: 24px !important;
	line-height: 1.12 !important;
	font-weight: 800;
}

.abadapp-accommodation-card p {
	margin: 0 0 12px !important;
	font-size: 14px !important;
	line-height: 1.5 !important;
}

.abadapp-accommodation-card p:last-of-type {
	margin-bottom: 0 !important;
}

.abadapp-accommodation-card__status {
	display: inline-block;
	margin-top: 4px;
	padding: 6px 10px;
	border-radius: 999px;
	background: rgba(251,132,0,.12);
	color: #FB8400;
	font-size: 11px;
	font-weight: 800;
}


/* MOBILE */

@media (max-width: 600px) {

	#abadappAccommodation {
		padding-top: 24px !important;
		padding-bottom: 100px !important;
	}

	#abadappAccommodation .abadapp-info-screen__header {
		margin-bottom: 18px !important;
	}

	#abadappAccommodation .abadapp-info-screen__header h2 {
		font-size: 38px !important;
		line-height: 1 !important;
		margin-bottom: 10px !important;
	}

	#abadappAccommodation .abadapp-info-screen__header p {
		font-size: 15px !important;
		line-height: 1.45 !important;
	}

	.abadapp-accommodation-list {
		gap: 12px;
	}

	.abadapp-accommodation-card {
		padding: 16px;
		border-radius: 16px;
	}

	.abadapp-accommodation-card h3 {
		font-size: 21px !important;
		line-height: 1.15 !important;
	}

	.abadapp-accommodation-card p {
		font-size: 13px !important;
		line-height: 1.45 !important;
		margin-bottom: 10px !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PERFIL
========================================================= */

#abadappProfile {
	min-height: 0 !important;
	height: auto !important;
	padding: 24px 20px 110px !important;
	box-sizing: border-box;
	background: #020C3B;
	color: #FFFFFF;
}

.abadapp-profile__header {
	margin-bottom: 24px;
}

.abadapp-profile__eyebrow {
	display: block;
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .14em;
	color: #FB8400;
}

.abadapp-profile__header h2 {
	margin: 0 0 10px;
	font-size: 38px;
	line-height: 1;
}

.abadapp-profile__header p {
	margin: 0;
	font-size: 15px;
	line-height: 1.45;
	color: rgba(255,255,255,.78);
}

.abadapp-profile__identity {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 18px;
	margin-bottom: 16px;
	border-radius: 20px;
	background: #F7F2E8;
	color: #020C3B;
}

.abadapp-profile__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 58px;
	width: 58px;
	height: 58px;
	border-radius: 50%;
	background: #FB8400;
	color: #FFFFFF;
	font-size: 24px;
	font-weight: 800;
}

.abadapp-profile__identity-text {
	min-width: 0;
}

.abadapp-profile__label {
	display: block;
	margin-bottom: 3px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .12em;
	color: #FB8400;
}

.abadapp-profile__identity-text h3 {
	margin: 0 0 7px;
	font-size: 22px;
	line-height: 1.1;
	color: #020C3B;
}

.abadapp-profile__status {
	display: inline-block;
	padding: 5px 9px;
	border-radius: 999px;
	background: rgba(35,95,180,.10);
	color: #235FB4;
	font-size: 11px;
	font-weight: 800;
}

.abadapp-profile__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 16px;
}

.abadapp-profile-card {
	min-width: 0;
	padding: 16px;
	border: 1px solid rgba(255,255,255,.10);
	border-radius: 16px;
	background: rgba(255,255,255,.06);
}

.abadapp-profile-card span {
	display: block;
	margin-bottom: 6px;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .10em;
	color: #FB8400;
}

.abadapp-profile-card strong {
	display: block;
	font-size: 15px;
	line-height: 1.3;
	color: #FFFFFF;
	word-break: break-word;
}

.abadapp-profile__ticket {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	min-height: 52px;
	padding: 0 18px;
	border: 0;
	border-radius: 14px;
	background: #FB8400;
	color: #020C3B;
	font: inherit;
	font-size: 14px;
	font-weight: 800;
	cursor: pointer;
}

.abadapp-profile__ticket span {
	font-size: 20px;
}

.abadapp-profile__note {
	margin: 12px 4px 0;
	font-size: 11px;
	line-height: 1.45;
	color: rgba(255,255,255,.55);
}


@media (max-width: 600px) {

	#abadappProfile {
		padding: 24px 20px 100px !important;
	}

	.abadapp-profile__header {
		margin-bottom: 18px;
	}

	.abadapp-profile__header h2 {
		font-size: 34px;
	}

	.abadapp-profile__identity {
		padding: 16px;
		border-radius: 18px;
	}

	.abadapp-profile__avatar {
		flex-basis: 52px;
		width: 52px;
		height: 52px;
		font-size: 21px;
	}

	.abadapp-profile__identity-text h3 {
		font-size: 20px;
	}

	.abadapp-profile-card {
		padding: 14px;
	}

}
/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â FORCE HIDDEN ELEMENTS
========================================================= */

.abadapp-ticket-card[hidden] {
	display: none !important;
}

.abadapp-profile__ticket {
	text-decoration: none !important;
}

.abadapp-profile__ticket--disabled {
	opacity: .5;
	cursor: default;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PROFILE STATUS
========================================================= */

.abadapp-profile__status--success {
	background: rgba(35,95,180,.10);
	color: #235FB4;
}

.abadapp-profile__status--warning {
	background: rgba(251,132,0,.14);
	color: #B85D00;
}

.abadapp-profile__status--danger {
	background: rgba(180,40,40,.12);
	color: #A12622;
}

.abadapp-profile__status--neutral {
	background: rgba(2,12,59,.08);
	color: #5B6170;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PROFILE STATUS
========================================================= */

.abadapp-profile__status--success {
	background: rgba(35,95,180,.10);
	color: #235FB4;
}

.abadapp-profile__status--warning {
	background: rgba(251,132,0,.14);
	color: #B85D00;
}

.abadapp-profile__status--danger {
	background: rgba(161,38,34,.12);
	color: #A12622;
}

.abadapp-profile__status--neutral {
	background: rgba(2,12,59,.08);
	color: #5B6170;
}

@media (max-width: 600px) {

	.abadapp-hero {
		min-height: 0 !important;
		height: auto !important;
		padding-bottom: 28px !important;
	}

	.abadapp-hero__content {
		min-height: 0 !important;
		height: auto !important;
		flex: none !important;
	}

	.abadapp-hero__copy {
		min-height: 0 !important;
		height: auto !important;
	}

	.abadapp-event-meta {
		margin-bottom: 0 !important;
	}

}
@media (max-width: 600px) {

	.abadapp-hero__art {
		display: none !important;
		min-height: 0 !important;
		height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.abadapp-hero__content {
		gap: 0 !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PASSAPORTE CARD
========================================================= */

.abadapp-passport-card {
	position: relative;
	overflow: hidden;

	margin-top: 22px;
	padding: 26px;

	border-radius: 24px;

	background:
		linear-gradient(
			135deg,
			#F7F2E8 0%,
			#FFF9EF 100%
		);

	color: #020C3B;
}

.abadapp-passport-card__content {
	position: relative;
	z-index: 2;

	max-width: 520px;
}

.abadapp-passport-card__eyebrow {
	display: block;

	margin-bottom: 9px;

	font-size: 11px;
	font-weight: 900;
	letter-spacing: .14em;

	color: #FB8400;
}

.abadapp-passport-card h2 {
	margin: 0 0 12px;

	font-size: 30px;
	line-height: 1.05;
	font-weight: 900;

	color: #020C3B;
}

.abadapp-passport-card p {
	max-width: 430px;

	margin: 0;

	font-size: 14px;
	line-height: 1.55;

	color: rgba(2,12,59,.72);
}

.abadapp-passport-card__progress {
	margin-top: 22px;
}

.abadapp-passport-card__progress-top {
	display: flex;
	align-items: center;
	justify-content: space-between;

	margin-bottom: 8px;

	font-size: 12px;
	font-weight: 800;
}

.abadapp-passport-card__progress-top strong {
	color: #FB8400;
}

.abadapp-passport-card__progress-bar {
	height: 8px;

	overflow: hidden;

	border-radius: 999px;

	background: rgba(2,12,59,.10);
}

.abadapp-passport-card__progress-bar span {
	display: block;

	height: 100%;

	border-radius: inherit;

	background: #FB8400;
}

.abadapp-passport-card__button {
	display: flex;
	align-items: center;
	justify-content: space-between;

	width: 100%;
	min-height: 50px;

	margin-top: 20px;
	padding: 0 17px;

	border: 0;
	border-radius: 14px;

	background: #020C3B;

	font: inherit;
	font-size: 13px;
	font-weight: 900;

	color: #FFFFFF;

	cursor: pointer;
}

.abadapp-passport-card__button span {
	font-size: 20px;
}

.abadapp-passport-card__stamp {
	position: absolute;

	top: -12px;
	right: -8px;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 110px;
	height: 110px;

	border: 3px solid rgba(251,132,0,.16);
	border-radius: 50%;

	transform: rotate(14deg);

	font-size: 44px;

	color: rgba(251,132,0,.16);
}

@media (max-width: 600px) {

	.abadapp-passport-card {
		margin-top: 18px;
		padding: 22px 20px;

		border-radius: 20px;
	}

	.abadapp-passport-card h2 {
		font-size: 27px;
	}

	.abadapp-passport-card__stamp {
		width: 90px;
		height: 90px;

		font-size: 36px;
	}

}

@media (max-width: 600px) {

	.abadapp-passport-card {
		margin-bottom: 90px;
	}

}


/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PASSAPORTE SCREEN
========================================================= */

#abadappPassport {
	padding: 28px 20px 120px;
	background: #020C3B;
	color: #FFFFFF;
}

.abadapp-passport-screen__header {
	margin-bottom: 24px;
}

.abadapp-passport-screen__header h2 {
	margin: 8px 0 10px;
	font-size: 38px;
	line-height: 1;
	color: #FFFFFF;
}

.abadapp-passport-screen__header p {
	margin: 0;
	max-width: 560px;
	font-size: 15px;
	line-height: 1.5;
	color: rgba(255,255,255,.72);
}

.abadapp-passport-summary {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	margin-top: 22px;
}

.abadapp-passport-summary > div {
	padding: 14px;
	border-radius: 16px;
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.10);
}

.abadapp-passport-summary span {
	display: block;
	margin-bottom: 5px;
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .12em;
	color: #FB8400;
}

.abadapp-passport-summary strong {
	font-size: 20px;
	color: #FFFFFF;
}

.abadapp-passport-progress {
	height: 8px;
	margin-top: 14px;
	overflow: hidden;
	border-radius: 999px;
	background: rgba(255,255,255,.12);
}

.abadapp-passport-progress span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: #FB8400;
}

.abadapp-passport-section-title {
	margin-top: 30px;
	margin-bottom: 14px;
}

.abadapp-passport-section-title span {
	display: block;
	margin-bottom: 5px;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .14em;
	color: #FB8400;
}

.abadapp-passport-section-title h3 {
	margin: 0;
	font-size: 26px;
	color: #FFFFFF;
}

.abadapp-passport-challenges {
	display: grid;
	gap: 12px;
}

.abadapp-passport-challenge {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 16px;
	border-radius: 17px;
	background: #F7F2E8;
	color: #020C3B;
}

.abadapp-passport-challenge__points {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #FB8400;
	color: #FFFFFF;
	font-size: 15px;
	font-weight: 900;
}

.abadapp-passport-challenge span {
	display: block;
	margin-bottom: 4px;
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .12em;
	color: #FB8400;
}

.abadapp-passport-challenge strong {
	display: block;
	font-size: 14px;
	line-height: 1.35;
	color: #020C3B;
}

.abadapp-passport-challenge small {
	display: block;
	margin-top: 6px;
	font-size: 11px;
	color: rgba(2,12,59,.55);
}

#abadappPassport[hidden] {
	display: none !important;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PASSAPORTE LEVELS
========================================================= */

.abadapp-passport-level {
	margin-top: 38px;
}

.abadapp-passport-level__heading {
	display: flex;
	align-items: center;
	gap: 13px;
}

.abadapp-passport-level__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 50px;
	width: 50px;
	height: 50px;

	border-radius: 50%;

	background: #FB8400;

	font-size: 14px;
	font-weight: 900;

	color: #FFFFFF;
}

.abadapp-passport-level__icon--medium {
	background: #235FB4;
}

.abadapp-passport-level__icon--hard {
	background: #F7F2E8;
	color: #020C3B;
}

.abadapp-passport-level__heading span {
	display: block;

	margin-bottom: 3px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .14em;

	color: #FB8400;
}

.abadapp-passport-level__heading h3 {
	margin: 0;

	font-size: 25px;
	line-height: 1.1;

	color: #FFFFFF;
}

.abadapp-passport-level__intro {
	margin: 12px 0 16px;

	max-width: 520px;

	font-size: 13px;
	line-height: 1.5;

	color: rgba(255,255,255,.62);
}


/* MEDIUM */

.abadapp-passport-challenge__points--medium {
	background: #235FB4;
}


/* HARD */

.abadapp-passport-challenge__points--hard {
	background: #020C3B;

	border: 2px solid #FB8400;

	color: #FB8400;
}


/* =========================================================
   LEGENDARY STAMPS
========================================================= */

.abadapp-passport-legendary {
	margin-top: 42px;
	padding: 22px;

	border: 1px solid rgba(251,132,0,.32);
	border-radius: 22px;

	background:
		linear-gradient(
			145deg,
			rgba(251,132,0,.10),
			rgba(255,255,255,.04)
		);
}

.abadapp-passport-legendary__heading > span {
	display: block;

	margin-bottom: 7px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .15em;

	color: #FB8400;
}

.abadapp-passport-legendary__heading h3 {
	margin: 0 0 8px;

	font-size: 26px;

	color: #FFFFFF;
}

.abadapp-passport-legendary__heading p {
	margin: 0;

	font-size: 13px;
	line-height: 1.5;

	color: rgba(255,255,255,.65);
}

.abadapp-passport-stamps {
	display: grid;
	gap: 12px;

	margin-top: 20px;
}

.abadapp-passport-stamp {
	display: flex;
	align-items: center;
	gap: 14px;

	padding: 15px;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 17px;

	background: rgba(255,255,255,.06);
}

.abadapp-passport-stamp__seal {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 54px;
	width: 54px;
	height: 54px;

	border: 2px dashed rgba(255,255,255,.32);
	border-radius: 50%;

	transform: rotate(-8deg);

	font-size: 23px;
	font-weight: 900;

	color: rgba(255,255,255,.55);
}

.abadapp-passport-stamp span {
	display: block;

	margin-bottom: 3px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .13em;

	color: #FB8400;
}

.abadapp-passport-stamp strong {
	display: block;

	font-size: 15px;

	color: #FFFFFF;
}

.abadapp-passport-stamp small {
	display: block;

	margin-top: 4px;

	font-size: 11px;

	color: rgba(255,255,255,.50);
}


/* GOLD */

.abadapp-passport-stamp--gold {
	border-color: rgba(211,175,55,.32);

	background:
		linear-gradient(
			135deg,
			rgba(211,175,55,.14),
			rgba(255,255,255,.04)
		);
}

.abadapp-passport-stamp--gold
.abadapp-passport-stamp__seal {
	border-color: #D3AF37;

	color: #D3AF37;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp-passport-level {
		margin-top: 34px;
	}

	.abadapp-passport-level__heading h3 {
		font-size: 23px;
	}

	.abadapp-passport-level__icon {
		flex-basis: 46px;
		width: 46px;
		height: 46px;
	}

	.abadapp-passport-legendary {
		margin-top: 36px;
		padding: 18px;
	}

	.abadapp-passport-legendary__heading h3 {
		font-size: 23px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PASSAPORTE ACCORDION
========================================================= */

.abadapp-passport-accordion {
	margin-top: 18px;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 20px;

	background: rgba(255,255,255,.035);

	overflow: hidden;
}

.abadapp-passport-accordion__summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;

	padding: 16px;

	cursor: pointer;
	list-style: none;
}

.abadapp-passport-accordion__summary::-webkit-details-marker {
	display: none;
}

.abadapp-passport-accordion__summary::marker {
	display: none;
	content: "";
}

.abadapp-passport-accordion__summary
.abadapp-passport-level__heading {
	flex: 1;
	min-width: 0;
}

.abadapp-passport-accordion__summary
.abadapp-passport-level__heading h3 {
	font-size: 21px;
}

.abadapp-passport-accordion__arrow {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 34px;
	width: 34px;
	height: 34px;

	border: 1px solid rgba(255,255,255,.12);
	border-radius: 50%;

	font-size: 22px;
	line-height: 1;

	color: #FFFFFF;

	transition: transform .2s ease;
}

.abadapp-passport-accordion[open]
.abadapp-passport-accordion__arrow {
	transform: rotate(180deg);
}

.abadapp-passport-accordion__content {
	padding:
		0 14px
		16px;
}

.abadapp-passport-accordion__content
.abadapp-passport-level__intro {
	margin-top: 0;
}

.abadapp-passport-accordion__content
.abadapp-passport-challenges {
	margin-top: 14px;
}


/* LEGENDARY */

.abadapp-passport-accordion--legendary {
	margin-top: 24px;

	border-color: rgba(211,175,55,.32);

	background:
		linear-gradient(
			145deg,
			rgba(211,175,55,.10),
			rgba(255,255,255,.035)
		);
}

.abadapp-passport-level__icon--legendary {
	background: transparent;

	border: 2px solid #D3AF37;

	color: #D3AF37;
}


/* MOBILE */

@media (max-width: 600px) {

	.abadapp-passport-accordion {
		margin-top: 14px;
		border-radius: 18px;
	}

	.abadapp-passport-accordion__summary {
		padding: 14px;
	}

	.abadapp-passport-accordion__summary
	.abadapp-passport-level__heading h3 {
		font-size: 19px;
	}

	.abadapp-passport-accordion__content {
		padding:
			0 10px
			12px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PASSAPORTE V2
   ========================================================= */

#abadappPassport {
	padding: 24px 20px 130px !important;
	background: #020C3B;
	color: #FFFFFF;
}


/* =========================================================
   BACK
========================================================= */

.abadapp-passport-back {
	margin: 0 0 24px;
	padding: 0;

	border: 0;
	background: transparent;

	font: inherit;
	font-size: 13px;
	font-weight: 800;

	color: #FFFFFF;

	cursor: pointer;
}


/* =========================================================
   HERO
========================================================= */

.abadapp-passport-hero {
	position: relative;
	overflow: hidden;

	padding: 26px 24px;

	border-radius: 24px;

	background:
		radial-gradient(
			circle at 90% 10%,
			rgba(251,132,0,.22),
			transparent 32%
		),
		linear-gradient(
			135deg,
			#0B205E 0%,
			#071444 55%,
			#020C3B 100%
		);

	border: 1px solid rgba(255,255,255,.10);
}

.abadapp-passport-hero__content {
	position: relative;
	z-index: 2;

	max-width: 540px;
}

.abadapp-passport-hero__eyebrow {
	display: block;

	margin-bottom: 12px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .16em;

	color: #FB8400;
}

.abadapp-passport-hero h2 {
	margin: 0;

	font-size: 40px;
	line-height: .94;
	font-weight: 900;
	letter-spacing: -.035em;

	color: #FFFFFF;
}

.abadapp-passport-hero p {
	max-width: 450px;

	margin: 18px 0 0;

	font-size: 14px;
	line-height: 1.55;

	color: rgba(255,255,255,.78);
}


/* decorative stamps */

.abadapp-passport-hero__decoration {
	position: absolute;
	top: -18px;
	right: -16px;

	width: 140px;
	height: 140px;

	border: 2px dashed rgba(251,132,0,.18);
	border-radius: 50%;

	transform: rotate(13deg);
}

.abadapp-passport-hero__decoration span {
	position: absolute;

	font-size: 22px;

	color: rgba(251,132,0,.20);
}

.abadapp-passport-hero__decoration span:nth-child(1) {
	top: 28px;
	left: 32px;
}

.abadapp-passport-hero__decoration span:nth-child(2) {
	top: 62px;
	right: 26px;
}

.abadapp-passport-hero__decoration span:nth-child(3) {
	bottom: 20px;
	left: 58px;
}


/* =========================================================
   STATS
========================================================= */

.abadapp-passport-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));

	gap: 10px;

	margin-top: 16px;
}

.abadapp-passport-stat {
	padding: 15px 14px;

	border: 1px solid rgba(255,255,255,.12);
	border-radius: 16px;

	background: rgba(255,255,255,.06);
}

.abadapp-passport-stat span {
	display: block;

	margin-bottom: 7px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .13em;

	color: #FB8400;
}

.abadapp-passport-stat strong {
	font-size: 20px;
	line-height: 1;

	color: #FFFFFF;
}


/* =========================================================
   PROGRESS
========================================================= */

.abadapp-passport-progress-block {
	margin: 18px 0 24px;
}

.abadapp-passport-progress__top {
	display: flex;
	align-items: center;
	justify-content: space-between;

	margin-bottom: 8px;

	font-size: 11px;
	font-weight: 800;

	color: rgba(255,255,255,.72);
}

.abadapp-passport-progress__top strong {
	color: #FB8400;
}

.abadapp-passport-progress__bar {
	height: 7px;

	overflow: hidden;

	border-radius: 999px;

	background: rgba(255,255,255,.13);
}

.abadapp-passport-progress__bar span {
	display: block;

	height: 100%;

	border-radius: inherit;

	background: #FB8400;
}


/* INFO SORTEIO */

.abadapp-passport-raffle-info {
	margin: 14px 0 0;
	padding: 12px 14px;

	border: 1px solid rgba(251,132,0,.18);
	border-radius: 14px;

	background: rgba(251,132,0,.06);

	color: rgba(255,255,255,.72);

	font-size: 12px;
	line-height: 1.55;
}

.abadapp-passport-raffle-info strong {
	color: #ffffff;
	font-weight: 800;
}


/* =========================================================
   LEVEL BASE
========================================================= */


/* =========================================================
   LEVEL BASE
========================================================= */

.abadapp-passport-level {
	--level-accent: #FB8400;
	--level-soft: rgba(251,132,0,.12);

	margin: 0 0 14px;

	overflow: hidden;

	border: 1px solid rgba(255,255,255,.12);
	border-radius: 20px;

	background: rgba(255,255,255,.045);
}

.abadapp-passport-level__summary {
	display: flex;
	align-items: center;

	gap: 13px;

	min-height: 74px;

	padding: 12px 14px;

	list-style: none;
	cursor: pointer;
}

.abadapp-passport-level__summary::-webkit-details-marker {
	display: none;
}

.abadapp-passport-level__summary::marker {
	content: "";
}

.abadapp-passport-level__badge {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 48px;
	width: 48px;
	height: 48px;

	border-radius: 50%;

	background: var(--level-accent);

	font-size: 14px;
	font-weight: 900;

	color: #FFFFFF;
}

.abadapp-passport-level__title {
	flex: 1;
	min-width: 0;
}

.abadapp-passport-level__title span {
	display: block;

	margin-bottom: 4px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .14em;

	color: var(--level-accent);
}

.abadapp-passport-level__title strong {
	display: block;

	font-size: 19px;
	line-height: 1.1;

	color: #FFFFFF;
}

.abadapp-passport-level__arrow {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 32px;
	width: 32px;
	height: 32px;

	border: 1px solid rgba(255,255,255,.16);
	border-radius: 50%;

	font-size: 20px;

	color: #FFFFFF;

	transition: transform .2s ease;
}

.abadapp-passport-level[open]
.abadapp-passport-level__arrow {
	transform: rotate(180deg);
}


/* =========================================================
   LEVEL COLOURS
========================================================= */

/* EASY */

.abadapp-passport-level--easy {
	--level-accent: #FB8400;
	--level-soft: rgba(251,132,0,.12);
}


/* MEDIUM */

.abadapp-passport-level--medium {
	--level-accent: #3F85E8;
	--level-soft: rgba(63,133,232,.14);
}

.abadapp-passport-level--medium
.abadapp-passport-level__badge {
	background: #3F85E8;
}


/* HARD */

.abadapp-passport-level--hard {
	--level-accent: #F7F2E8;
	--level-soft: rgba(247,242,232,.10);
}

.abadapp-passport-level--hard
.abadapp-passport-level__badge {
	background: #F7F2E8;
	color: #020C3B;
}

.abadapp-passport-level--hard
.abadapp-passport-level__title span {
	color: #FB8400;
}


/* LEGENDARY */

.abadapp-passport-level--legendary {
	--level-accent: #D3AF37;
	--level-soft: rgba(211,175,55,.12);

	border-color: rgba(211,175,55,.46);

	background:
		linear-gradient(
			135deg,
			rgba(211,175,55,.10),
			rgba(255,255,255,.035)
		);
}

.abadapp-passport-level--legendary
.abadapp-passport-level__badge {
	background: transparent;

	border: 2px solid #D3AF37;

	color: #D3AF37;
}


/* =========================================================
   OPEN LEVEL
========================================================= */

.abadapp-passport-level__content {
	padding:
		0 10px
		12px;
}

.abadapp-passport-level__intro {
	margin: 0 4px 14px;

	font-size: 12px;
	line-height: 1.5;

	color: rgba(255,255,255,.62);
}


/* =========================================================
   MISSIONS
========================================================= */

.abadapp-passport-missions {
	display: grid;
	gap: 10px;
}

.abadapp-passport-mission {
	position: relative;

	display: flex;
	align-items: center;

	gap: 14px;

	min-height: 92px;

	padding: 15px;

	border-radius: 17px;

	background: #F7F2E8;

	color: #020C3B;

	box-shadow:
		0 7px 18px rgba(0,0,0,.08);
}

.abadapp-passport-mission__badge {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 46px;
	width: 46px;
	height: 46px;

	border-radius: 50%;

	background: var(--level-accent);

	font-size: 13px;
	font-weight: 900;

	color: #FFFFFF;
}


/* hard mission */

.abadapp-passport-level--hard
.abadapp-passport-mission__badge {
	background: #020C3B;

	border: 2px solid #FB8400;

	color: #FB8400;
}

.abadapp-passport-mission__content {
	min-width: 0;
}

.abadapp-passport-mission__content > span {
	display: block;

	margin-bottom: 5px;

	font-size: 8px;
	font-weight: 900;
	letter-spacing: .14em;

	color: var(--level-accent);
}

.abadapp-passport-level--hard
.abadapp-passport-mission__content > span {
	color: #FB8400;
}

.abadapp-passport-mission__content strong {
	display: block;

	font-size: 13px;
	line-height: 1.35;
	font-weight: 800;

	color: #020C3B;
}

.abadapp-passport-mission__content small {
	display: inline-block;

	margin-top: 7px;

	font-size: 10px;
	font-weight: 700;

	color: rgba(2,12,59,.48);
}


/* =========================================================
   LEGENDARY CARDS
========================================================= */

.abadapp-passport-legendary-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));

	gap: 10px;
}

.abadapp-passport-legendary-card {
	padding: 16px;

	border: 1px dashed rgba(255,255,255,.24);
	border-radius: 17px;

	background: rgba(255,255,255,.05);

	text-align: center;
}

.abadapp-passport-legendary-card__seal {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 54px;
	height: 54px;

	margin: 0 auto 12px;

	border: 2px dashed rgba(255,255,255,.28);
	border-radius: 50%;

	transform: rotate(-7deg);

	font-size: 22px;
	font-weight: 900;

	color: rgba(255,255,255,.58);
}

.abadapp-passport-legendary-card > span {
	display: block;

	font-size: 8px;
	font-weight: 900;
	letter-spacing: .13em;

	color: #FB8400;
}

.abadapp-passport-legendary-card strong {
	display: block;

	margin-top: 5px;

	font-size: 14px;

	color: #FFFFFF;
}

.abadapp-passport-legendary-card small {
	display: block;

	margin-top: 5px;

	font-size: 10px;
	line-height: 1.4;

	color: rgba(255,255,255,.52);
}


/* GOLD */

.abadapp-passport-legendary-card--gold {
	border-color: rgba(211,175,55,.45);

	background:
		linear-gradient(
			145deg,
			rgba(211,175,55,.13),
			rgba(255,255,255,.04)
		);
}

.abadapp-passport-legendary-card--gold
.abadapp-passport-legendary-card__seal {
	border-color: #D3AF37;

	color: #D3AF37;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	#abadappPassport {
		padding:
			22px 18px
			130px !important;
	}

	.abadapp-passport-back {
		margin-bottom: 20px;
	}

	.abadapp-passport-hero {
		padding: 23px 20px;

		border-radius: 21px;
	}

	.abadapp-passport-hero h2 {
		font-size: 36px;
	}

	.abadapp-passport-hero p {
		font-size: 13px;
	}

	.abadapp-passport-stats {
		gap: 8px;
	}

	.abadapp-passport-stat {
		padding: 13px 11px;

		border-radius: 14px;
	}

	.abadapp-passport-stat strong {
		font-size: 18px;
	}

	.abadapp-passport-level {
		border-radius: 18px;
	}

	.abadapp-passport-level__summary {
		min-height: 70px;

		padding: 11px 12px;
	}

	.abadapp-passport-level__badge {
		flex-basis: 44px;
		width: 44px;
		height: 44px;
	}

	.abadapp-passport-level__title strong {
		font-size: 18px;
	}

	.abadapp-passport-mission {
		min-height: 88px;

		padding: 14px 13px;

		border-radius: 16px;
	}

	.abadapp-passport-mission__badge {
		flex-basis: 43px;
		width: 43px;
		height: 43px;
	}

	.abadapp-passport-legendary-grid {
		grid-template-columns: 1fr;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â PASSAPORTE STAMP BOARD
========================================================= */

.abadapp-passport-stamp-board {
	margin: 26px 0 22px;
	padding: 20px;

	border-radius: 22px;

	background: #F7F2E8;

	color: #020C3B;
}

.abadapp-passport-stamp-board__header {
	margin-bottom: 18px;
}

.abadapp-passport-stamp-board__header > span {
	display: block;

	margin-bottom: 5px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .15em;

	color: #FB8400;
}

.abadapp-passport-stamp-board__header h3 {
	margin: 0 0 7px;

	font-size: 24px;
	line-height: 1.05;

	color: #020C3B;
}

.abadapp-passport-stamp-board__header p {
	margin: 0;

	font-size: 12px;
	line-height: 1.5;

	color: rgba(2,12,59,.62);
}


/* =========================================================
   GRID
========================================================= */

.abadapp-passport-stamp-grid {
	display: grid;
	grid-template-columns:
		repeat(2, minmax(0, 1fr));

	gap: 10px;
}

.abadapp-passport-stamp-slot {
	position: relative;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	min-height: 105px;

	padding: 12px;

	border: 1.5px dashed #235FB4;
	border-radius: 8px;

	background:
		rgba(255,255,255,.36);

	text-align: center;

	overflow: hidden;
}


/* slight passport irregularity */

.abadapp-passport-stamp-slot:nth-child(odd) {
	transform: rotate(-1deg);
}

.abadapp-passport-stamp-slot:nth-child(even) {
	transform: rotate(1deg);
}


/* =========================================================
   AVAILABLE
========================================================= */

.abadapp-passport-stamp-slot.is-available strong {
	font-size: 16px;
	font-weight: 900;

	color: #020C3B;
}

.abadapp-passport-stamp-slot.is-available small {
	margin-top: 5px;

	font-size: 8px;
	font-weight: 900;
	letter-spacing: .14em;

	color: rgba(2,12,59,.42);
}


/* =========================================================
   LOCKED
========================================================= */

.abadapp-passport-stamp-slot.is-locked {
	background:
		repeating-linear-gradient(
			-45deg,
			rgba(2,12,59,.025),
			rgba(2,12,59,.025) 7px,
			rgba(255,255,255,.25) 7px,
			rgba(255,255,255,.25) 14px
		);
}

.abadapp-passport-stamp-slot__question {
	display: block;

	font-size: 26px;
	font-weight: 900;

	color: #020C3B;
}

.abadapp-passport-stamp-slot.is-locked small {
	margin-top: 4px;

	font-size: 8px;
	font-weight: 900;
	letter-spacing: .17em;

	color: rgba(2,12,59,.42);
}


/* =========================================================
   EARNED ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â DIGITAL STAMP
========================================================= */

.abadapp-passport-stamp-slot.is-earned {
	border-color:
		rgba(251,132,0,.35);

	background:
		rgba(251,132,0,.06);
}

.abadapp-passport-stamp-mark {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	width: 86px;
	height: 86px;

	border:
		3px double
		rgba(251,132,0,.78);

	border-radius: 50%;

	transform:
		rotate(-8deg);

	color:
		rgba(251,132,0,.85);

	opacity: .92;
}

.abadapp-passport-stamp-slot:nth-child(4)
.abadapp-passport-stamp-mark {
	transform:
		rotate(7deg);
}

.abadapp-passport-stamp-mark span {
	font-size: 15px;
	line-height: 1;
}

.abadapp-passport-stamp-mark strong {
	margin-top: 3px;

	font-size: 11px;
	font-weight: 900;
	letter-spacing: .04em;
}

.abadapp-passport-stamp-mark small {
	margin-top: 3px;

	font-size: 6px;
	font-weight: 900;
	letter-spacing: .12em;
}


/* little worn / ink effect */

.abadapp-passport-stamp-mark::after {
	content: "";

	position: absolute;

	width: 78px;
	height: 78px;

	border-radius: 50%;

	background:
		radial-gradient(
			circle at 35% 35%,
			transparent 0 30%,
			rgba(247,242,232,.22) 31% 33%,
			transparent 34%
		);

	pointer-events: none;
}


/* =========================================================
   GOLD
========================================================= */

.abadapp-passport-stamp-slot--gold {
	border-color:
		rgba(211,175,55,.75);

	background:
		linear-gradient(
			135deg,
			rgba(211,175,55,.10),
			rgba(255,255,255,.32)
		);
}

.abadapp-passport-stamp-slot--gold
.abadapp-passport-stamp-slot__question {
	color: #D3AF37;
}

.abadapp-passport-stamp-slot--gold small {
	color: #9A7B15 !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp-passport-stamp-board {
		margin:
			22px 0 18px;

		padding: 16px;

		border-radius: 19px;
	}

	.abadapp-passport-stamp-board__header h3 {
		font-size: 22px;
	}

	.abadapp-passport-stamp-grid {
		gap: 8px;
	}

	.abadapp-passport-stamp-slot {
		min-height: 96px;
		padding: 9px;
	}

	.abadapp-passport-stamp-mark {
		width: 76px;
		height: 76px;
	}

	.abadapp-passport-stamp-mark::after {
		width: 68px;
		height: 68px;
	}

	.abadapp-passport-stamp-slot.is-available strong {
		font-size: 14px;
	}

}

.abadapp-passport-level__badge svg {
	width: 23px;
	height: 23px;
	display: block;
	stroke-width: 1.35 !important;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â HISTÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œRIA QUIZ
========================================================= */

.abadapp-history-quiz {
	width: 100%;
	max-width: 760px;
	margin: 0 auto;
	padding: 28px 20px 120px;
	box-sizing: border-box;
	color: #020C3B;
}


/* VOLTAR */

.abadapp-history-quiz__back {
	display: inline-flex;
	align-items: center;
	gap: 8px;

	margin: 0 0 28px;
	padding: 0;

	border: 0;
	background: transparent;

	color: #235FB4;

	font: inherit;
	font-size: 14px;
	font-weight: 800;

	cursor: pointer;
}


/* HEADER */

.abadapp-history-quiz__header {
	margin-bottom: 32px;
}


.abadapp-history-quiz__eyebrow {
	display: block;

	margin-bottom: 10px;

	color: #FB8400;

	font-size: 12px;
	font-weight: 900;
	letter-spacing: .12em;
	text-transform: uppercase;
}


.abadapp-history-quiz__header h2 {
	margin: 0;

	color: #020C3B;

	font-size: clamp(32px, 7vw, 48px);
	line-height: 1;
	font-weight: 900;
	letter-spacing: -.04em;
}


.abadapp-history-quiz__header p {
	max-width: 560px;

	margin: 16px 0 0;

	color: rgba(2, 12, 59, .68);

	font-size: 15px;
	line-height: 1.6;
}


/* PROGRESS */

.abadapp-history-quiz__progress {
	margin-bottom: 28px;
}


.abadapp-history-quiz__progress-top {
	display: flex;
	align-items: center;
	justify-content: space-between;

	margin-bottom: 9px;

	font-size: 12px;
	font-weight: 900;
	letter-spacing: .08em;
}


.abadapp-history-quiz__progress-top span {
	color: rgba(2, 12, 59, .55);
}


.abadapp-history-quiz__progress-top strong {
	color: #235FB4;
}


.abadapp-history-quiz__progress-bar {
	width: 100%;
	height: 7px;

	overflow: hidden;

	background: rgba(35, 95, 180, .12);

	border-radius: 999px;
}


.abadapp-history-quiz__progress-bar span {
	display: block;
	height: 100%;

	background: #235FB4;

	border-radius: inherit;
}


/* QUESTION CARD */

.abadapp-history-question {
	padding: 26px;

	background: #F7F2E8;

	border: 1px solid rgba(2, 12, 59, .08);
	border-radius: 24px;

	box-shadow:
		0 12px 35px rgba(2, 12, 59, .08);
}


.abadapp-history-question__number {
	display: block;

	margin-bottom: 16px;

	color: #FB8400;

	font-size: 11px;
	font-weight: 900;
	letter-spacing: .1em;
	text-transform: uppercase;
}


.abadapp-history-question h3 {
	margin: 0 0 26px;

	color: #020C3B;

	font-size: clamp(24px, 5.5vw, 34px);
	line-height: 1.15;
	font-weight: 900;
	letter-spacing: -.025em;
}


/* ANSWERS */

.abadapp-history-question__answers {
	display: grid;
	gap: 11px;
}


.abadapp-history-answer {
	width: 100%;

	display: flex;
	align-items: center;
	gap: 14px;

	padding: 15px 16px;

	border: 1px solid rgba(2, 12, 59, .13);
	border-radius: 16px;

	background: #ffffff;

	color: #020C3B;

	font: inherit;
	text-align: left;

	cursor: pointer;

	transition:
		transform .18s ease,
		border-color .18s ease,
		background .18s ease,
		box-shadow .18s ease;
}


.abadapp-history-answer:hover {
	transform: translateY(-1px);

	border-color: rgba(35, 95, 180, .45);

	box-shadow:
		0 6px 18px rgba(2, 12, 59, .07);
}


.abadapp-history-answer__letter {
	width: 34px;
	height: 34px;

	flex: 0 0 34px;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	border-radius: 50%;

	background: rgba(35, 95, 180, .1);

	color: #235FB4;

	font-size: 13px;
	font-weight: 900;
}


.abadapp-history-answer strong {
	display: block;

	color: #020C3B;

	font-size: 14px;
	line-height: 1.4;
	font-weight: 700;
}


/* SELECTED ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â vamos ativar isto no prÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â³ximo passo */

.abadapp-history-answer.is-selected {
	border-color: #235FB4;

	background: rgba(35, 95, 180, .07);

	box-shadow:
		0 0 0 2px rgba(35, 95, 180, .1);
}


.abadapp-history-answer.is-selected
.abadapp-history-answer__letter {
	background: #235FB4;
	color: #ffffff;
}


/* CONFIRM */

.abadapp-history-question__confirm {
	width: 100%;

	min-height: 54px;

	margin-top: 22px;
	padding: 0 22px;

	border: 0;
	border-radius: 16px;

	background: #FB8400;

	color: #ffffff;

	font: inherit;
	font-size: 14px;
	font-weight: 900;

	cursor: pointer;

	transition:
		transform .18s ease,
		opacity .18s ease;
}


.abadapp-history-question__confirm:not(:disabled):hover {
	transform: translateY(-1px);
}


.abadapp-history-question__confirm:disabled {
	opacity: .35;
	cursor: not-allowed;
}


/* EMPTY */

.abadapp-history-quiz__empty {
	padding: 24px;

	background: #F7F2E8;

	border-radius: 20px;

	color: #020C3B;
}


.abadapp-history-quiz__empty strong {
	display: block;
	margin-bottom: 6px;
}


/* MOBILE */

@media (max-width: 600px) {

	.abadapp-history-quiz {
		padding:
			24px
			16px
			110px;
	}


	.abadapp-history-question {
		padding: 21px 17px;
		border-radius: 20px;
	}


	.abadapp-history-answer {
		padding: 13px;
	}


	.abadapp-history-question h3 {
		margin-bottom: 22px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â HISTÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œRIA QUIZ RESULT EFFECTS
========================================================= */

.abadapp-history-answer.is-correct {
	border-color: #168447;
	background: #EAF8F0;

	animation:
		abadappQuizCorrect .45s ease;
}


.abadapp-history-answer.is-correct
.abadapp-history-answer__letter {
	background: #168447;
	color: #ffffff;
}


.abadapp-history-answer.is-wrong {
	border-color: #C84343;
	background: #FFF0F0;

	animation:
		abadappQuizWrong .4s ease;
}


.abadapp-history-answer.is-wrong
.abadapp-history-answer__letter {
	background: #C84343;
	color: #ffffff;
}


.abadapp-history-question__result {
	margin-top: 18px;
	padding: 13px 15px;

	border-radius: 14px;

	font-size: 14px;
	font-weight: 800;
	line-height: 1.4;
}


.abadapp-history-question__result.is-success {
	background: #EAF8F0;
	color: #116837;
}


.abadapp-history-question__result.is-error {
	background: #FFF0F0;
	color: #A52F2F;
}


.abadapp-history-question.is-answered
.abadapp-history-answer {
	cursor: default;
}


@keyframes abadappQuizCorrect {

	0% {
		transform: scale(1);
	}

	45% {
		transform: scale(1.025);
	}

	100% {
		transform: scale(1);
	}

}


@keyframes abadappQuizWrong {

	0%,
	100% {
		transform: translateX(0);
	}

	25% {
		transform: translateX(-5px);
	}

	50% {
		transform: translateX(5px);
	}

	75% {
		transform: translateX(-3px);
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â HISTÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œRIA QUIZ FINAL
========================================================= */

.abadapp-history-quiz__final {
	width: 100%;
	padding: 12px 0 24px;
}

.abadapp-history-final {
	position: relative;
	overflow: hidden;

	width: 100%;
	max-width: 680px;
	margin: 0 auto;
	padding: 42px 28px 30px;

	border-radius: 28px;
	border: 1px solid rgba(2, 12, 59, 0.08);

	background: #ffffff;

	box-shadow:
		0 18px 50px rgba(2, 12, 59, 0.10);

	text-align: center;
	box-sizing: border-box;
}


/* ---------------------------------------------------------
   SUCCESS
--------------------------------------------------------- */

.abadapp-history-final--success {
	background:
		linear-gradient(
			145deg,
			#ffffff 0%,
			#fffaf2 100%
		);
}


.abadapp-history-final__seal {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 92px;
	height: 92px;

	margin: 0 auto 22px;

	border-radius: 50%;

	background:
		linear-gradient(
			145deg,
			#f7d96a,
			#d3af37
		);

	border: 6px solid rgba(211, 175, 55, 0.18);

	color: #020C3B;

	font-size: 42px;
	line-height: 1;

	box-shadow:
		0 12px 30px rgba(211, 175, 55, 0.28);

	animation:
		abadappHistorySealPop
		0.55s
		ease-out;
}


.abadapp-history-final__eyebrow {
	display: block;

	margin-bottom: 10px;

	color: #FB8400;

	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}


.abadapp-history-final h3 {
	max-width: 520px;
	margin: 0 auto 14px;

	color: #020C3B;

	font-size: clamp(
		26px,
		5vw,
		38px
	);

	line-height: 1.08;
	font-weight: 900;
	letter-spacing: -0.03em;
}


.abadapp-history-final p {
	max-width: 500px;
	margin: 0 auto;

	color: rgba(2, 12, 59, 0.72);

	font-size: 16px;
	line-height: 1.65;
}


.abadapp-history-final p strong {
	color: #020C3B;
	font-weight: 900;
}


/* ---------------------------------------------------------
   SCORE ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â NOT PASSED
--------------------------------------------------------- */

.abadapp-history-final__score {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 110px;
	height: 110px;

	margin: 0 auto 22px;

	border-radius: 50%;

	background: #F7F2E8;

	border: 1px solid rgba(2, 12, 59, 0.08);

	color: #020C3B;

	font-size: 30px;
	font-weight: 900;
	letter-spacing: -0.04em;
}


.abadapp-history-final--retry
.abadapp-history-final__eyebrow {
	color: #235FB4;
}


/* ---------------------------------------------------------
   BUTTON
--------------------------------------------------------- */

.abadapp-history-final__button {
	width: 100%;
	max-width: 340px;

	min-height: 58px;

	margin-top: 28px;
	padding: 0 22px;

	border: 0;
	border-radius: 16px;

	background: #020C3B;
	color: #ffffff;

	font: inherit;
	font-size: 15px;
	font-weight: 850;

	cursor: pointer;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	box-shadow:
		0 12px 26px rgba(2, 12, 59, 0.18);

	transition:
		transform 0.18s ease,
		box-shadow 0.18s ease,
		opacity 0.18s ease;
}


.abadapp-history-final__button:hover {
	transform: translateY(-2px);

	box-shadow:
		0 16px 32px rgba(2, 12, 59, 0.22);
}


.abadapp-history-final__button:active {
	transform: translateY(0);
}


/* ---------------------------------------------------------
   DECORATIVE GLOW
--------------------------------------------------------- */

.abadapp-history-final--success::before {
	content: "";

	position: absolute;

	width: 180px;
	height: 180px;

	top: -100px;
	right: -80px;

	border-radius: 50%;

	background: rgba(251, 132, 0, 0.10);

	pointer-events: none;
}


.abadapp-history-final--success::after {
	content: "";

	position: absolute;

	width: 160px;
	height: 160px;

	bottom: -100px;
	left: -90px;

	border-radius: 50%;

	background: rgba(35, 95, 180, 0.08);

	pointer-events: none;
}


/* ---------------------------------------------------------
   ANIMATION
--------------------------------------------------------- */

@keyframes abadappHistorySealPop {

	0% {
		opacity: 0;
		transform:
			scale(0.55)
			rotate(-12deg);
	}

	70% {
		transform:
			scale(1.08)
			rotate(3deg);
	}

	100% {
		opacity: 1;
		transform:
			scale(1)
			rotate(0deg);
	}

}


/* ---------------------------------------------------------
   MOBILE
--------------------------------------------------------- */

@media (max-width: 767px) {

	.abadapp-history-quiz__final {
		padding:
			6px
			0
			22px;
	}


	.abadapp-history-final {
		padding:
			34px
			20px
			24px;

		border-radius: 22px;
	}


	.abadapp-history-final__seal {
		width: 80px;
		height: 80px;

		font-size: 36px;
	}


	.abadapp-history-final__score {
		width: 92px;
		height: 92px;

		font-size: 26px;
	}


	.abadapp-history-final p {
		font-size: 15px;
	}


	.abadapp-history-final__button {
		max-width: none;
	}

}

.abadapp-history-final__seal-icon {
	width: 38px;
	height: 38px;
	display: block;
	color: #020C3B;
}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â HISTÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œRIA FINAL / SPACING CLEANUP
========================================================= */

.abadapp-history-quiz-screen {
	padding-top: 0;
}


.abadapp-history-quiz__final {
	width: 100%;

	padding:
		18px
		0
		32px;

	box-sizing: border-box;
}


.abadapp-history-final {
	max-width: 680px;

	margin:
		24px
		auto
		0;

	padding:
		34px
		28px
		30px;
}


.abadapp-history-final__seal {
	margin-bottom: 18px;
}


.abadapp-history-final__eyebrow {
	margin-bottom: 9px;
}


.abadapp-history-final h3 {
	margin:
		0
		auto
		12px;
}


.abadapp-history-final p {
	margin:
		0
		auto;
}


/*
 * O botÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£o de voltar fica com o mesmo
 * comportamento visual dos restantes.
 */

.abadapp-history-quiz-screen
.abadapp-passport-back {
	margin-bottom: 18px;
}


/* MOBILE */

@media (max-width: 767px) {

	.abadapp-history-quiz__final {
		padding:
			8px
			0
			24px;
	}


	.abadapp-history-final {
		margin-top: 16px;

		padding:
			30px
			20px
			26px;

		border-radius: 22px;
	}


	.abadapp-history-final__seal {
		margin-bottom: 16px;
	}

}

/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â HISTÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œRIA BACK BUTTON
========================================================= */

.abadapp-history-quiz__back {
	color: #ffffff !important;
}

.abadapp-history-quiz__back:hover,
.abadapp-history-quiz__back:focus {
	color: #ffffff !important;
}

.abadapp-history-quiz__back {
	background: transparent;
	border: 0;
	padding: 0;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
	text-decoration: none;
}

/* HISTÃƒÆ’Ã†â€™ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œRIA ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â TÃƒÆ’Ã†â€™Ãƒâ€šÃ‚ÂTULO DE CONQUISTA */

.abadapp-history-final--success h3 {
	color: #1F8F4E;
}


.abadapp-passport-mission__action {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;

	margin-top: 14px;
	padding: 11px 16px;

	border-radius: 12px;

	background: #FB8400;
	color: #ffffff;

	font-size: 13px;
	font-weight: 800;
	line-height: 1;

	transition:
		transform .18s ease,
		opacity .18s ease;
}

.abadapp-passport-mission:hover
.abadapp-passport-mission__action {
	transform: translateX(2px);
}

#abadaSectionExtras > .abada-jogos-form__section-description {
	margin-bottom: 14px;
}

.abada-jogos-extras-title {
	margin: 0 0 22px;
	font-size: 24px;
	font-weight: 800;
	line-height: 1.2;
	color: #020C3B;
}

.abada-jogos-extras-group {
	margin-bottom: 28px;
}

.abada-jogos-extras-group:last-child {
	margin-bottom: 0;
}

.abada-jogos-extras-group h3 {
	margin: 0 0 12px;
	font-size: 16px;
	font-weight: 800;
	color: #020C3B;
}

.abada-jogos-extra-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;

	padding: 15px 16px;
	margin-bottom: 10px;

	border: 1px solid #E3E5EA;
	border-radius: 14px;
	background: #FAFBFD;

	cursor: pointer;
	box-sizing: border-box;
}

.abada-jogos-extra-row__info {
	display: flex;
	flex: 1;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
}

.abada-jogos-extra-row__info strong {
	font-size: 14px;
	color: #020C3B;
}

.abada-jogos-extra-row__info span {
	font-size: 16px;
	font-weight: 800;
	color: #020C3B;
	white-space: nowrap;
}

.abada-jogos-extra-row input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.abada-jogos-toggle {
	position: relative;
	width: 48px;
	height: 28px;
	flex: 0 0 48px;

	border-radius: 999px;
	background: #D9DDE5;

	transition: background .2s ease;
}

.abada-jogos-toggle::after {
	content: "";
	position: absolute;
	top: 4px;
	left: 4px;

	width: 20px;
	height: 20px;

	border-radius: 50%;
	background: #FFFFFF;

	box-shadow: 0 1px 4px rgba(0,0,0,.15);

	transition: transform .2s ease;
}

.abada-jogos-extra-row input:checked + .abada-jogos-toggle {
	background: #FB8400;
}

.abada-jogos-extra-row input:checked + .abada-jogos-toggle::after {
	transform: translateX(20px);
}

/* =========================================================
   EXTRA OFFICIAL SHIRTS
========================================================= */


.abada-jogos-extra-shirts {
	margin-top: 42px;
	padding-top: 34px;

	border-top: 1px solid #E3E5EA;
}

.abada-jogos-extra-shirts .abada-jogos-extras-title {
	margin-bottom: 8px;
}

.abada-jogos-extra-shirts__description {
	margin: 0 0 22px;

	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;

	color: var(--abada-muted);
}


/* PICKER */

.abada-jogos-extra-shirt-picker {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr)
		130px
		auto;
	align-items: end;
	gap: 12px;
}

.abada-jogos-extra-shirt-picker__field {
	min-width: 0;
}

.abada-jogos-extra-shirt-picker__field label {
	display: block;

	margin-bottom: 7px;

	font-size: 12px;
	font-weight: 800;

	color: var(--abada-navy);
}

.abada-jogos-extra-shirt-picker__field select {
	width: 100%;
	height: 48px;

	padding: 0 42px 0 14px;
	
	appearance: none;
-webkit-appearance: none;

background-image:
	linear-gradient(45deg, transparent 50%, #020C3B 50%),
	linear-gradient(135deg, #020C3B 50%, transparent 50%);

background-position:
	calc(100% - 22px) 21px,
	calc(100% - 17px) 21px;

background-size:
	5px 5px,
	5px 5px;

background-repeat: no-repeat;

	border: 1px solid rgba(2, 12, 59, 0.16);
	border-radius: 12px;

	background-color: #FFFFFF;

	font-family: inherit;
	font-size: 14px;
	font-weight: 700;

	color: var(--abada-navy);

	box-sizing: border-box;
}

.abada-jogos-extra-shirt-picker__add {
	height: 48px;
	padding: 0 20px;

	border: 0;
	border-radius: 12px;

	background: var(--abada-navy);
	color: #FFFFFF;

	font-family: inherit;
	font-size: 12px;
	font-weight: 900;
	white-space: nowrap;

	cursor: pointer;
}

.abada-jogos-extra-shirt-picker__add:hover {
	opacity: 0.92;
}


/* SELECTED SHIRTS */

.abada-jogos-extra-shirts__selection {
	margin-top: 20px;

	border-top: 1px solid #E3E5EA;
}

.abada-jogos-extra-shirt-selected {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr)
		auto
		auto
		36px;
	align-items: center;
	gap: 16px;

	padding: 14px 4px;

	border-bottom: 1px solid #E3E5EA;
}

.abada-jogos-extra-shirt-selected__size {
	font-size: 14px;
	font-weight: 800;

	color: var(--abada-navy);
}

.abada-jogos-extra-shirt-selected__quantity {
	font-size: 13px;
	font-weight: 700;

	color: var(--abada-muted);
}

.abada-jogos-extra-shirt-selected__price {
	font-size: 15px;
	font-weight: 900;

	color: var(--abada-navy);
}

.abada-jogos-extra-shirt-selected__remove {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 32px;
	height: 32px;

	padding: 0;

	border: 0;
	border-radius: 50%;

	background: rgba(2, 12, 59, 0.06);
	color: var(--abada-navy);

	font-size: 18px;
	font-weight: 800;

	cursor: pointer;
}


@media (max-width: 700px) {

	.abada-jogos-extra-shirt-picker {
		grid-template-columns:
			minmax(0, 1fr)
			100px;
	}

	.abada-jogos-extra-shirt-picker__add {
		grid-column: 1 / -1;
		width: 100%;
	}

	.abada-jogos-extra-shirt-selected {
		grid-template-columns:
			minmax(0, 1fr)
			auto
			32px;
		gap: 10px;
	}

	.abada-jogos-extra-shirt-selected__quantity {
		grid-column: 1;
		grid-row: 2;
	}

	.abada-jogos-extra-shirt-selected__price {
		grid-column: 2;
		grid-row: 1 / span 2;
	}

	.abada-jogos-extra-shirt-selected__remove {
		grid-column: 3;
		grid-row: 1 / span 2;
	}

}


/* =========================================================
   REGISTRATION ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â MESSAGES
========================================================= */

.abada-jogos-registration__message {
	display: flex;
	flex-direction: column;
	gap: 6px;

	margin: 24px 0;
	padding: 18px 20px;

	border-radius: 14px;

	font-size: 14px;
	line-height: 1.5;
}

.abada-jogos-registration__message strong {
	font-size: 15px;
	font-weight: 800;
}

.abada-jogos-registration__message--error {
	background: #FFF3F1;
	border: 1px solid #F3C5BF;
	color: #8A2C22;
}

.abada-jogos-registration__message--success {
	background: #EEF8F1;
	border: 1px solid #B9DEC4;
	color: #245B33;
}

/* =========================================================
   HIDDEN ELEMENTS
========================================================= */

.abada-jogos-registration [hidden] {
	display: none !important;
}
/* =========================================================
   HIDDEN ELEMENTS
========================================================= */

.abada-jogos-registration [hidden] {
	display: none !important;
}

/* =========================================================
   REGISTRATION FORM ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â SUBMIT LOADING
========================================================= */

.abada-jogos-form__submit.is-loading {
	cursor: wait;
	pointer-events: none;
}

.abada-submit-spinner {
	display: inline-block;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;

	border: 2px solid rgba(255, 255, 255, 0.4);
	border-top-color: #ffffff;
	border-radius: 50%;

	animation:
		abada-submit-spin
		0.75s
		linear
		infinite;
}

@keyframes abada-submit-spin {

	to {
		transform: rotate(360deg);
	}

}
.abada-ticket__title-row {
	display: flex;
	align-items: center;
	gap: 14px;
}

.abada-ticket__event-logo {
	width: 54px;
	height: 54px;
	object-fit: contain;
	flex: 0 0 auto;

	background: #ffffff;
	border-radius: 12px !important;
	padding: 6px;
	box-sizing: border-box;
	box-shadow: 0 2px 8px rgba(0,0,0,0.08);

	transform: translateY(-4px);
}


@media print {

body *:not(.abada-ticket):not(.abada-ticket *):not(:has(.abada-ticket)) {
	display: none !important;
}

	.abada-ticket {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
}

	.abada-ticket-next {
		display: none !important;
	}

	.abada-ticket {
		max-width: 100% !important;
		margin: 0 auto !important;
		box-shadow: none !important;
	}

}

/* =========================================================
   TICKET PDF / PRINT
========================================================= */

@page {
	size: A4 landscape;
	margin: 10mm;
}

@media print {


	.abada-ticket,
	.abada-ticket * {
		-webkit-print-color-adjust: exact !important;
		print-color-adjust: exact !important;
	}
	
	
	html,
	body {
		margin: 0 !important;
		padding: 0 !important;
		background: #ffffff !important;
	}

	.abada-ticket-page {
		padding: 0 !important;
		margin: 0 !important;
	}

	.abada-ticket {
		position: static !important;

		display: grid !important;
		grid-template-columns:
			minmax(0, 1fr) 230px !important;

		width: 100% !important;
		max-width: none !important;
		min-height: 0 !important;

		margin: 0 !important;

		border-radius: 20px !important;
	}

	.abada-ticket__main {
		order: 1 !important;
		padding: 30px !important;
	}

	.abada-ticket__stub {
		order: 2 !important;

		min-height: 0 !important;
		padding: 30px 20px !important;
	}

	.abada-ticket__qr-placeholder {
		width: 180px !important;
		height: 180px !important;
		margin-top: 18px !important;
	}

	.abada-ticket__qr-placeholder img,
	.abada-ticket__qr-placeholder canvas {
		width: 160px !important;
		height: 160px !important;
	}

	.abada-ticket__wallet-button {
		display: none !important;
	}

	.abada-ticket-next {
		display: none !important;
	}

}


/* =========================================================
   ABADAPP ÃƒÆ’Ã‚Â¢ÃƒÂ¢Ã¢â‚¬Å¡Ã‚Â¬ÃƒÂ¢Ã¢â€šÂ¬Ã‚Â RESULTADOS
========================================================= */

#abadappResults {
	min-height: 0 !important;
	height: auto !important;

	margin: 0 !important;

	padding:
		24px
		20px
		110px !important;

	box-sizing: border-box;

	background: #020C3B !important;
	color: #FFFFFF;
}


#abadappResults[hidden] {
	display: none !important;
}


.abadapp-results__header {
	margin: 0 0 24px !important;
	padding: 0 !important;
}


.abadapp-results__eyebrow {
	display: block;

	margin-bottom: 7px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .15em;

	color: #FB8400;
}


.abadapp-results__header h2 {
	margin: 0;

	font-size: clamp(
		34px,
		8vw,
		48px
	);
	font-weight: 900;
	line-height: .98;
	letter-spacing: -.035em;

	color: #FFFFFF;
}


.abadapp-results__header p {
	max-width: 540px;

	margin: 12px 0 0;

	font-size: 14px;
	line-height: 1.55;

	color: rgba(
		255,
		255,
		255,
		.68
	);
}


/* EMPTY STATE */

.abadapp-results-empty {
	padding: 34px 24px;

	border:
		1px solid
		rgba(
			255,
			255,
			255,
			.10
		);
	border-radius: 22px;

	background:
		rgba(
			255,
			255,
			255,
			.05
		);

	text-align: center;
}


.abadapp-results-empty__icon {
	margin-bottom: 12px;

	font-size: 34px;
	line-height: 1;
}


.abadapp-results-empty h3 {
	margin: 0 0 8px;

	font-size: 19px;
	font-weight: 850;

	color: #FFFFFF;
}


.abadapp-results-empty p {
	max-width: 430px;

	margin: 0 auto;

	font-size: 13px;
	line-height: 1.55;

	color:
		rgba(
			255,
			255,
			255,
			.64
		);
}


/* GROUPS */

.abadapp-results-groups {
	display: grid;

	gap: 16px;
}


.abadapp-results-group {
	overflow: hidden;

	border:
		1px solid
		rgba(
			255,
			255,
			255,
			.10
		);
	border-radius: 22px;

	background: #F7F2E8;

	color: #020C3B;
}


.abadapp-results-group__header {
	display: flex;
	align-items: center;
	justify-content: space-between;

	gap: 14px;

	padding: 18px 20px;

	border-bottom:
		1px solid
		rgba(
			2,
			12,
			59,
			.10
		);
}


.abadapp-results-group__header > div > span {
	display: block;

	margin-bottom: 3px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .14em;

	color: #FB8400;
}


.abadapp-results-group__header h3 {
	margin: 0;

	font-size: 23px;
	font-weight: 900;
	line-height: 1.05;

	color: #020C3B;
}


.abadapp-results-group__gender {
	display: inline-flex;
	align-items: center;

	min-height: 28px;
	padding: 0 10px;

	border-radius: 999px;

	background:
		rgba(
			2,
			12,
			59,
			.08
		);

	font-size: 10px;
	font-weight: 850;

	color: #020C3B;
}


/* RESULT LIST */

.abadapp-results-list {
	display: grid;
}


.abadapp-result-item {
	display: grid;

	grid-template-columns:
		54px
		minmax(
			0,
			1fr
		);

	align-items: center;

	gap: 12px;

	padding: 15px 18px;

	border-bottom:
		1px solid
		rgba(
			2,
			12,
			59,
			.08
		);
}


.abadapp-result-item:last-child {
	border-bottom: 0;
}


.abadapp-result-item--1 {
	background:
		linear-gradient(
			90deg,
			rgba(
				255,
				202,
				56,
				.14
			),
			transparent
		);
}


.abadapp-result-item__position {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 44px;
	height: 44px;

	border-radius: 50%;

	background: #FFFFFF;

	box-shadow:
		0 6px 18px
		rgba(
			2,
			12,
			59,
			.08
		);
}


.abadapp-result-item__position span {
	font-size: 22px;
	font-weight: 900;
	line-height: 1;

	color: #020C3B;
}


.abadapp-result-item--4
.abadapp-result-item__position span {
	font-size: 13px;
}


.abadapp-result-item__content {
	min-width: 0;
}


.abadapp-result-item__top {
	display: flex;
	align-items: center;
	justify-content: space-between;

	gap: 12px;
}


.abadapp-result-item__top strong {
	min-width: 0;

	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;

	font-size: 16px;
	font-weight: 900;

	color: #020C3B;
}


.abadapp-result-item__country {
	display: inline-flex;
	align-items: center;

	gap: 5px;

	flex: 0 0 auto;

	font-size: 10px;
	font-weight: 750;

	color:
		rgba(
			2,
			12,
			59,
			.64
		);
}


.abadapp-result-item__flag {
	font-size: 16px;
	line-height: 1;
}


.abadapp-result-item__meta {
	display: flex;
	flex-wrap: wrap;

	gap: 6px 12px;

	margin-top: 5px;
}


.abadapp-result-item__meta span {
	position: relative;

	font-size: 11px;
	font-weight: 700;

	color:
		rgba(
			2,
			12,
			59,
			.58
		);
}


.abadapp-result-item__meta span + span::before {
	content: "ÃƒÆ’Ã¢â‚¬Å¡Ãƒâ€šÃ‚Â·";

	position: absolute;
	left: -8px;

	color:
		rgba(
			2,
			12,
			59,
			.30
		);
}


/* MOBILE */

@media (
	max-width: 520px
) {

	.abadapp-results-group__header {
		align-items: flex-start;
	}


	.abadapp-result-item {
		grid-template-columns:
			48px
			minmax(
				0,
				1fr
			);

		padding:
			14px
			15px;
	}


	.abadapp-result-item__position {
		width: 40px;
		height: 40px;
	}


	.abadapp-result-item__top {
		align-items: flex-start;
		flex-direction: column;

		gap: 4px;
	}


	.abadapp-result-item__country {
		flex: none;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â RESULTADOS / PREMIUM DESIGN TEST
========================================================= */

.abadapp-results-groups {
	gap: 20px;
}


/* CARD */

.abadapp-results-group {
	overflow: hidden;

	border: 0;
	border-radius: 24px;

	background: #F7F2E8;

	box-shadow:
		0 18px 45px rgba(0, 0, 0, .16);
}


/* CATEGORY HEADER */

.abadapp-results-group__header {
	padding: 19px 20px 17px;

	border-bottom:
		1px solid rgba(2, 12, 59, .09);
}

.abadapp-results-group__header > div > span {
	margin-bottom: 5px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .16em;
}

.abadapp-results-group__header h3 {
	font-size: 24px;
	letter-spacing: -.025em;
}

.abadapp-results-group__gender {
	min-height: 30px;
	padding: 0 12px;

	background: #020C3B;
	color: #FFFFFF;

	font-size: 10px;
	font-weight: 800;
}


/* RESULT ROW */

.abadapp-result-item {
	position: relative;

	grid-template-columns:
		52px
		minmax(0, 1fr);

	gap: 13px;

	padding: 17px 18px;

	background: transparent;

	border-bottom:
		1px solid rgba(2, 12, 59, .08);
}


/* REMOVE OLD FIRST-PLACE GRADIENT */

.abadapp-result-item--1 {
	background: transparent;
}


/* POSITION CIRCLE */

.abadapp-result-item__position {
	width: 44px;
	height: 44px;

	border: 2px solid rgba(2, 12, 59, .10);

	background: #FFFFFF;

	box-shadow: none;
}

.abadapp-result-item__position span {
	font-size: 0;
}


/* generate positions ourselves ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â ASCII-safe Unicode escapes */

.abadapp-result-item__position span::before {
	font-size: 13px;
	font-weight: 900;
	line-height: 1;
	color: #020C3B;
}

.abadapp-result-item--1
.abadapp-result-item__position span::before {
	content: "1.\00BA";
}

.abadapp-result-item--2
.abadapp-result-item__position span::before {
	content: "2.\00BA";
}

.abadapp-result-item--3
.abadapp-result-item__position span::before {
	content: "3.\00BA";
}

.abadapp-result-item--4
.abadapp-result-item__position span::before {
	content: "4.\00BA";
}


/* GOLD */

.abadapp-result-item--1 {
	background:
		linear-gradient(
			90deg,
			rgba(214, 166, 38, .13),
			rgba(214, 166, 38, 0)
		);
}

.abadapp-result-item--1
.abadapp-result-item__position {
	border-color: #D6A626;

	background: #FFF8DD;

	box-shadow:
		0 5px 16px rgba(214, 166, 38, .18);
}


/* SILVER */

.abadapp-result-item--2
.abadapp-result-item__position {
	border-color: #A8ADB5;

	background: #F5F6F7;
}


/* BRONZE */

.abadapp-result-item--3
.abadapp-result-item__position {
	border-color: #B87333;

	background: #FFF3E8;
}


/* NAME */

.abadapp-result-item__top strong {
	font-size: 17px;
	font-weight: 900;
	line-height: 1.15;

	letter-spacing: -.015em;

	color: #020C3B;
}


/* COUNTRY */

.abadapp-result-item__country {
	margin-top: 2px;

	font-size: 10px;
	font-weight: 800;

	color: rgba(2, 12, 59, .58);
}


/* SECONDARY INFORMATION */

.abadapp-result-item__meta {
	display: flex;
	flex-direction: column;

	gap: 3px;

	margin-top: 8px;
}

.abadapp-result-item__meta span {
	font-size: 11px;
	font-weight: 700;
	line-height: 1.3;

	color: rgba(2, 12, 59, .55);
}


/* remove the broken Ãƒâ€šÃ‚Â· separator */

.abadapp-result-item__meta span + span::before {
	display: none !important;
}


/* make graduation slightly stronger */

.abadapp-result-item__meta span:last-child {
	color: rgba(2, 12, 59, .72);
	font-weight: 800;
}


/* MOBILE */

@media (max-width: 520px) {

	.abadapp-result-item {
		grid-template-columns:
			48px
			minmax(0, 1fr);

		padding:
			16px
			15px;
	}

	.abadapp-result-item__position {
		width: 40px;
		height: 40px;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â RESULTADOS / COMPACT ROWS
========================================================= */


/* Give the information column all available width */

.abadapp-result-item__content {
	width: 100%;
	min-width: 0;
}


/* NAME + COUNTRY ON SAME LINE */

.abadapp-result-item__top {
	display: grid !important;

	grid-template-columns:
		minmax(0, 1fr)
		auto;

	align-items: center !important;

	gap: 10px !important;
}


.abadapp-result-item__top strong {
	overflow: hidden;

	text-overflow: ellipsis;
	white-space: nowrap;
}


/* COUNTRY RIGHT */

.abadapp-result-item__country {
	justify-self: end;

	margin: 0;

	white-space: nowrap;
}


/* SCHOOL + GRADUATION */

.abadapp-result-item__meta {
	display: grid !important;

	grid-template-columns:
		minmax(0, 1fr)
		auto;

	align-items: center;

	gap: 8px 14px;

	margin-top: 7px;
}


.abadapp-result-item__meta span {
	min-width: 0;
}


/* SCHOOL */

.abadapp-result-item__meta span:first-child {
	overflow: hidden;

	text-overflow: ellipsis;
	white-space: nowrap;
}


/* GRADUATION */

.abadapp-result-item__meta span:last-child {
	justify-self: end;

	padding: 4px 8px;

	border-radius: 999px;

	background:
		rgba(2, 12, 59, .06);

	white-space: nowrap;

	font-size: 10px;
	font-weight: 850;

	color: #020C3B;
}


/* Slightly tighter rows */

.abadapp-result-item {
	padding-top: 15px;
	padding-bottom: 15px;
}


/* =========================================================
   FIX 4TH POSITION DUPLICATION
========================================================= */

.abadapp-result-item--4
.abadapp-result-item__position span {
	font-size: 0 !important;
}


.abadapp-result-item--4
.abadapp-result-item__position span::before {
	content: "4.Ãƒâ€šÃ‚Âº";
	font-size: 13px !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 520px) {

	.abadapp-result-item__top {
		grid-template-columns:
			minmax(0, 1fr)
			auto !important;

		align-items: center !important;
	}


	.abadapp-result-item__meta {
		grid-template-columns:
			minmax(0, 1fr)
			auto !important;
	}


	.abadapp-result-item__country {
		justify-self: end;
	}


	.abadapp-result-item__meta span:last-child {
		justify-self: end;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â RESULTADOS / 1Ãƒâ€šÃ‚Âº LUGAR MAIS DESTACADO
========================================================= */

.abadapp-result-item--1 {
	position: relative;

	background:
		linear-gradient(
			90deg,
			rgba(214, 166, 38, .18) 0%,
			rgba(255, 248, 221, .88) 38%,
			rgba(255, 248, 221, .18) 100%
		);
}

.abadapp-result-item--1::before {
	content: "";

	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;

	width: 3px;
	background: #D6A626;
}

.abadapp-result-item--1 .abadapp-result-item__top strong {
	color: #041451;
}

.abadapp-result-item--1 .abadapp-result-item__position {
	border-color: #D6A626;
	background: #FFF8DD;

	box-shadow:
		0 6px 18px rgba(214, 166, 38, .18);
}

.abadapp-result-item--1 .abadapp-result-item__meta span:last-child {
	background: rgba(214, 166, 38, .14);
	color: #7A5A00;
}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â RESULTADOS / ACCORDION
========================================================= */

.abadapp-results-group__header {
	position: relative;

	padding-right: 54px;

	cursor: pointer;

	-webkit-tap-highlight-color: transparent;
}


/* CHEVRON ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â ASCII-safe Unicode escape */

.abadapp-results-group__header::after {
	content: "\203A";

	position: absolute;
	top: 50%;
	right: 20px;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 28px;
	height: 28px;

	border-radius: 50%;
	background: rgba(2, 12, 59, .07);

	font-size: 20px;
	font-weight: 900;
	line-height: 1;

	color: #020C3B;

	transform:
		translateY(-50%)
		rotate(0deg);

	transition:
		transform .22s ease,
		background .22s ease;
}

.abadapp-results-group:not(.is-collapsed)
.abadapp-results-group__header::after {
	transform:
		translateY(-50%)
		rotate(90deg);
}


/* CLOSED */

.abadapp-results-group.is-collapsed
.abadapp-results-list {
	display: none;
}


.abadapp-results-group.is-collapsed
.abadapp-results-group__header {
	border-bottom: 0;
}


.abadapp-results-group.is-collapsed
.abadapp-results-group__header::after {
	transform:
		translateY(-50%)
		rotate(0deg);
}


/* LITTLE SEPARATION BETWEEN GROUPS */

.abadapp-results-group {
	transition:
		box-shadow .2s ease,
		transform .2s ease;
}

/* =========================================================
   RESULTADOS ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â CLOSED CARD COMPACT
========================================================= */

.abadapp-results-group.is-collapsed
.abadapp-results-group__header {
	min-height: 64px;

	padding:
		14px
		54px
		14px
		18px;

	align-items: center;
}


/* hide eyebrow "CATEGORIA" when closed */

.abadapp-results-group.is-collapsed
.abadapp-results-group__header > div > span {
	display: none;
}


/* compact title */

.abadapp-results-group.is-collapsed
.abadapp-results-group__header h3 {
	font-size: 19px;
	line-height: 1.1;
	letter-spacing: -.02em;
}


/* keep gender vertically centered */

.abadapp-results-group.is-collapsed
.abadapp-results-group__gender {
	margin: 0;
}


/* slightly flatter closed cards */

.abadapp-results-group.is-collapsed {
	border-radius: 18px;
}


/* open card keeps current larger shape */

.abadapp-results-group:not(.is-collapsed) {
	border-radius: 24px;
}

/* =========================================================
   RESULTADOS ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â SAME HEADER OPEN / CLOSED
========================================================= */

.abadapp-results-group__header {
	padding:
		18px
		56px
		17px
		20px;

	align-items: center;
}


/* eyebrow always visible */

.abadapp-results-group.is-collapsed
.abadapp-results-group__header > div > span {
	display: block;
}


/* same title open + closed */

.abadapp-results-group.is-collapsed
.abadapp-results-group__header h3,
.abadapp-results-group:not(.is-collapsed)
.abadapp-results-group__header h3 {
	font-size: 23px;
	line-height: 1.05;
	letter-spacing: -.025em;
}


/* same card shape */

.abadapp-results-group.is-collapsed,
.abadapp-results-group:not(.is-collapsed) {
	border-radius: 22px;
}


/* no artificial closed height */

.abadapp-results-group.is-collapsed
.abadapp-results-group__header {
	min-height: 0;
}


/* gender pill no longer needed */

.abadapp-results-group__header > div > span {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	padding: 5px 10px;
	margin-bottom: 8px;

	border-radius: 999px;

	background: rgba(251, 132, 0, .12);
	border: 1px solid rgba(251, 132, 0, .22);

	font-size: 10px !important;
	font-weight: 900;
	letter-spacing: .08em;
	line-height: 1.1;

	color: #D96F00;
}

.abadapp-results-group__title-row {
	display: flex;
	align-items: center;
	flex-wrap: wrap;

	gap: 8px;
}


.abadapp-results-group__title-row h3 {
	margin: 0;
}


.abadapp-results-group__gender-pill {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	padding: 4px 8px;

	border: 1px solid rgba(251, 132, 0, .24);
	border-radius: 999px;

	background: rgba(251, 132, 0, .10);

	font-size: 9px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: .07em;

	color: #D96F00;
}

/* =========================================================
   RESULTADOS ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â ALIGN TITLE + GENDER + ARROW
========================================================= */

.abadapp-results-group__title-row {
	display: flex;
	align-items: center !important;
	flex-wrap: nowrap;

	gap: 8px;

	min-height: 28px;
	width: 100%;
}


.abadapp-results-group__title-row h3 {
	display: flex;
	align-items: center;

	margin: 0 !important;

	line-height: 28px !important;
}


.abadapp-results-group__gender-pill {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;

	height: 22px;
	padding: 0 9px;

	margin: 0 !important;

	line-height: 1 !important;

	flex: 0 0 auto;
}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â DESCOBRIR LUXEMBURGO
========================================================= */

#abadappTourism {
	min-height: 100%;
	padding:
		24px
		20px
		120px;

	box-sizing: border-box;

	background: #020C3B;
	color: #FFFFFF;
}


/* HEADER */

#abadappTourism .abadapp-info-screen__header {
	margin-bottom: 24px;
}

#abadappTourism .abadapp-info-screen__back {
	display: inline-flex;
	align-items: center;

	margin: 0 0 28px;
	padding: 0;

	border: 0;
	background: transparent;

	font-family: inherit;
	font-size: 14px;
	font-weight: 850;

	color: #FFFFFF;

	cursor: pointer;
}

#abadappTourism .abadapp-info-screen__eyebrow {
	display: block;

	margin-bottom: 8px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .16em;

	color: #FB8400;
}

#abadappTourism .abadapp-info-screen__header h2 {
	max-width: 340px;

	margin: 0;

	font-size: clamp(36px, 9vw, 48px);
	font-weight: 900;
	line-height: .98;
	letter-spacing: -.035em;

	color: #FFFFFF;
}

#abadappTourism .abadapp-info-screen__header p {
	max-width: 360px;

	margin: 14px 0 0;

	font-size: 14px;
	font-weight: 600;
	line-height: 1.55;

	color: rgba(255,255,255,.68);
}


/* =========================================================
   ROUTE INTRO
========================================================= */

.abadapp-tourism-intro {
	position: relative;
	overflow: hidden;

	margin-bottom: 18px;
	padding: 22px;

	border:
		1px solid
		rgba(251,132,0,.24);

	border-radius: 22px;

	background:
		linear-gradient(
			135deg,
			rgba(251,132,0,.18),
			rgba(255,255,255,.05)
		);
}

.abadapp-tourism-intro::after {
	content: "ÃƒÂ¢Ã…â€œÃ‚Â¦";

	position: absolute;
	right: 18px;
	top: 14px;

	font-size: 40px;

	color: rgba(251,132,0,.18);
}

.abadapp-tourism-intro > span {
	display: inline-flex;

	margin-bottom: 9px;
	padding: 5px 9px;

	border-radius: 999px;

	background: #FB8400;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .12em;

	color: #020C3B;
}

.abadapp-tourism-intro strong {
	display: block;

	max-width: 280px;

	font-size: 21px;
	font-weight: 900;
	line-height: 1.1;

	color: #FFFFFF;
}

.abadapp-tourism-intro p {
	max-width: 310px;

	margin: 9px 0 0;

	font-size: 13px;
	font-weight: 600;
	line-height: 1.5;

	color: rgba(255,255,255,.70);
}


/* =========================================================
   PLACE CARDS
========================================================= */

.abadapp-tourism-grid {
	display: grid;
	gap: 14px;
}

.abadapp-tourism-card {
	position: relative;

	display: grid;

	grid-template-columns:
		46px
		minmax(0, 1fr);

	gap: 14px;

	padding: 18px;

	border-radius: 22px;

	background: #F7F2E8;
	color: #020C3B;

	box-shadow:
		0 12px 30px
		rgba(0,0,0,.12);
}


/* NUMBER */

.abadapp-tourism-card__number {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 42px;
	height: 42px;

	border:
		1px solid
		rgba(251,132,0,.28);

	border-radius: 50%;

	background:
		rgba(251,132,0,.10);

	font-size: 11px;
	font-weight: 900;

	color: #D96F00;
}


/* PLACE */

.abadapp-tourism-card__content {
	min-width: 0;
}

.abadapp-tourism-card__content > span {
	display: block;

	margin-bottom: 5px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: .12em;

	color: #FB8400;
}

.abadapp-tourism-card__content h3 {
	margin: 0;

	font-size: 20px;
	font-weight: 900;
	line-height: 1.08;
	letter-spacing: -.02em;

	color: #020C3B;
}

.abadapp-tourism-card__content p {
	margin: 8px 0 0;

	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;

	color: rgba(2,12,59,.62);
}


/* META */

.abadapp-tourism-card__meta {
	display: flex;
	flex-wrap: wrap;

	gap: 6px;

	margin-top: 12px;
}

.abadapp-tourism-card__meta span {
	display: inline-flex;
	align-items: center;

	padding: 5px 8px;

	border-radius: 999px;

	background:
		rgba(2,12,59,.06);

	font-size: 9px;
	font-weight: 800;

	color: rgba(2,12,59,.72);
}


/* first recommended place */

.abadapp-tourism-card:first-child {
	background:
		linear-gradient(
			135deg,
			#FFF8E4,
			#F7F2E8
		);
}


/* MOBILE */

@media (max-width: 520px) {

	#abadappTourism {
		padding:
			22px
			18px
			120px;
	}

	.abadapp-tourism-card {
		grid-template-columns:
			42px
			minmax(0,1fr);

		padding: 16px;
	}

	.abadapp-tourism-card__number {
		width: 38px;
		height: 38px;
	}

}

.abadapp-tourism-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;

	gap: 8px;

	margin-top: 12px;
}


.abadapp-tourism-card__meta a {
	display: inline-flex;
	align-items: center;

	padding: 5px 8px;

	border-radius: 999px;

	background: #020C3B;

	font-size: 9px;
	font-weight: 900;

	text-decoration: none;

	color: #FFFFFF;

	transition:
		transform .18s ease,
		background .18s ease;
}


.abadapp-tourism-card__meta a:hover {
	background: #FB8400;
	color: #020C3B;

	transform: translateY(-1px);
}

/* =========================================================
   TOURISM CARDS ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â IMAGES
========================================================= */

.abadapp-tourism-card {
	grid-template-columns:
		46px
		minmax(0, 1fr);

	padding: 0 18px 18px;

	overflow: hidden;
}

.abadapp-tourism-card__image {
	grid-column: 1 / -1;

	margin:
		0
		-18px
		14px;

	height: 115px;

	overflow: hidden;

	border-radius: 22px 22px 0 0;
}

.abadapp-tourism-card__image img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
	object-position: center;
}

.abadapp-tourism-card__number,
.abadapp-tourism-card__content {
	align-self: start;
}

@media (max-width: 520px) {

	.abadapp-tourism-card {
		padding: 0 16px 16px;
	}

}

@media (max-width: 520px) {

	.abadapp-tourism-card__image {
		height: 110px;

		margin:
			0
			-16px
			14px;
	}

}

#CookiebotWidget {
    display: none !important;
}

.cky-btn-revisit-wrapper,
.cky-btn-revisit {
    display: none !important;
}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â HOME VISUAL RHYTHM
   Same outer width + clearer section hierarchy
========================================================= */

/* Todas as grandes secÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Âµes da Home usam a mesma largura */
.abadapp-hero,
.abadapp-upcoming,
.abadapp-passport-card,
.abadapp-program__useful {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
}


/* EspaÃƒÆ’Ã‚Â§amento consistente entre blocos */
.abadapp-upcoming,
.abadapp-passport-card,
.abadapp-program__useful {
	margin-top: 20px;
}


/* =========================================================
   PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O
========================================================= */

.abadapp-upcoming {
	padding: 24px 22px;

	border: 1px solid rgba(255,255,255,.08);
	border-radius: 22px;

	background:
		linear-gradient(
			145deg,
			rgba(255,255,255,.045),
			rgba(255,255,255,.018)
		);

	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.025);
}


/* Os eventos ficam ligeiramente mais leves
   que o container exterior */
.abadapp-upcoming__item {
	background: rgba(255,255,255,.05);

	border-color:
		rgba(255,255,255,.09);
}


/* =========================================================
   INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS
========================================================= */

.abadapp-program__useful {
	padding: 24px 22px;

	border: 1px solid rgba(255,255,255,.07);
	border-radius: 22px;

	background:
		linear-gradient(
			145deg,
			rgba(7,24,77,.72),
			rgba(2,12,59,.55)
		);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp-upcoming,
	.abadapp-passport-card,
	.abadapp-program__useful {
		margin-top: 18px;
	}

	.abadapp-upcoming,
	.abadapp-program__useful {
		padding: 22px 20px;
		border-radius: 20px;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â HOME COUNTDOWN + AJUSTES FINAIS
========================================================= */

/* CONTAGEM DECRESCENTE */
.abadapp-hero-countdown {
	display: grid;
	grid-template-columns:
		minmax(0, 1fr) auto
		minmax(0, 1fr) auto
		minmax(0, 1fr) auto
		minmax(0, 1fr);
	align-items: start;
	gap: 10px;

	width: 100%;
	margin: 28px 0 18px;
	padding: 18px 16px;
	box-sizing: border-box;

	border: 1px solid rgba(255,255,255,.10);
	border-radius: 18px;
	background: rgba(255,255,255,.045);
}

.abadapp-hero-countdown__item {
	min-width: 0;
	text-align: center;
}

.abadapp-hero-countdown__number {
	display: block;
	font-size: clamp(28px, 4vw, 40px);
	font-weight: 900;
	line-height: 1;
	letter-spacing: -.04em;
	color: #FFFFFF;
}

.abadapp-hero-countdown__label {
	display: block;
	margin-top: 7px;
	font-size: 9px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .10em;
	color: rgba(255,255,255,.58);
}

.abadapp-hero-countdown__separator {
	display: block;
	padding-top: 1px;
	font-size: 30px;
	font-weight: 900;
	line-height: 1;
	color: #FB8400;
}

.abadapp-hero-countdown + .abadapp-event-meta {
	margin-top: 0;
}


/* VER PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â CTA como botÃƒÆ’Ã‚Â£o do Passaporte */
.abadapp-upcoming__header {
	margin-bottom: 24px;
}

.abadapp-upcoming__all {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;

	width: 100%;
	min-height: 50px;
	margin-top: 20px;
	padding: 0 17px;
	box-sizing: border-box;

	border: 0;
	border-radius: 14px;
	background: #FB8400;

	font: inherit;
	font-size: 13px;
	font-weight: 900;
	text-decoration: none;
	color: #FFFFFF !important;

	transition:
		transform .18s ease,
		background-color .18s ease;
}

.abadapp-upcoming__all:hover {
	background: #E97700;
	color: #FFFFFF !important;
	transform: translateY(-1px);
}

.abadapp-upcoming__all > span {
	font-size: 20px;
	line-height: 1;
}


@media (max-width: 600px) {

	.abadapp-hero-countdown {
		gap: 6px;
		margin-top: 24px;
		margin-bottom: 18px;
		padding: 16px 10px;
		border-radius: 16px;
	}

	.abadapp-hero-countdown__number {
		font-size: 27px;
	}

	.abadapp-hero-countdown__label {
		margin-top: 6px;
		font-size: 7px;
		letter-spacing: .08em;
	}

	.abadapp-hero-countdown__separator {
		font-size: 25px;
	}

	/* Corrige o vazio enorme antes de InformaÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Âµes ÃƒÆ’Ã‚Âºteis. */
	.abadapp-passport-card {
		margin-bottom: 0 !important;
	}

	.abadapp-program__useful {
		margin-top: 18px !important;
	}

}



/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â HOME PREMIUM V2
   Apenas visual da HOME
   NÃƒÆ’Ã†â€™O ALTERA O MENU NAV
========================================================= */


/* =========================================================
   1. HERO ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MAIS VISUAL / EDITORIAL
========================================================= */

.abadapp-hero {
	position: relative;
	isolation: isolate;
	overflow: hidden;

	padding: 30px 28px 32px;

	border: 1px solid rgba(255,255,255,.06);
	border-radius: 26px;

	background:
		radial-gradient(
			circle at 88% 15%,
			rgba(30, 95, 210, .42),
			transparent 34%
		),
		radial-gradient(
			circle at 86% 55%,
			rgba(251,132,0,.16),
			transparent 36%
		),
		linear-gradient(
			145deg,
			#020C3B 0%,
			#06174E 55%,
			#04113D 100%
		);

	box-shadow:
		0 28px 80px rgba(0,0,0,.18),
		inset 0 1px 0 rgba(255,255,255,.035);
}


/* glow atmosfÃƒÆ’Ã‚Â©rico */
.abadapp-hero::after {
	content: "";

	position: absolute;
	inset: 0;
	z-index: 0;

	pointer-events: none;

	background:
		linear-gradient(
			90deg,
			rgba(2,12,59,.96) 0%,
			rgba(2,12,59,.82) 38%,
			rgba(2,12,59,.24) 72%,
			rgba(2,12,59,.04) 100%
		);
}


/* conteÃƒÆ’Ã‚Âºdo sempre acima da arte */
.abadapp-hero__top,
.abadapp-hero__copy,
.abadapp-hero-countdown,
.abadapp-event-meta {
	position: relative;
	z-index: 4;
}


.abadapp-hero__content {
	position: relative;

	display: block;

	min-height: 0;
}


/* imagem actual do Hero passa a fazer parte da composiÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o */
.abadapp-hero__art {
	position: absolute;

	top: 18px;
	right: -32px;
	bottom: auto;

	z-index: 1;

	display: flex !important;
	align-items: center;
	justify-content: center;

	width: 58%;
	height: 360px;
	min-height: 0 !important;

	margin: 0 !important;
	padding: 0 !important;

	opacity: .96;

	pointer-events: none;
}


.abadapp-hero__art-image {
	width: 100%;
	max-width: none;
	height: 100%;
	max-height: none;

	object-fit: contain;
	object-position: center;

	filter:
		drop-shadow(
			0 24px 38px rgba(0,0,0,.24)
		);

	transform:
		scale(1.06)
		rotate(-1deg);
}


/* texto mais compacto para dar espaÃƒÆ’Ã‚Â§o ÃƒÆ’  arte */
.abadapp-hero__copy {
	position: relative;
	z-index: 3;

	max-width: 58%;
}


.abadapp-hero__eyebrow {
	margin-bottom: 10px;
}


.abadapp-hero__copy h1 {
	max-width: 440px;

	font-size: clamp(40px, 5vw, 62px);
	line-height: .98;
}


.abadapp-hero__copy p {
	max-width: 410px;

	margin-top: 18px;

	font-size: 14px;
	line-height: 1.6;

	color: rgba(255,255,255,.78);
}



/* =========================================================
   2. COUNTDOWN
========================================================= */

.abadapp-hero-countdown {
	position: relative;
	z-index: 5;

	grid-template-columns:
		minmax(0,1fr)
		auto
		minmax(0,1fr)
		auto
		minmax(0,1fr)
		auto
		minmax(0,1fr);

	margin:
		34px 0
		12px;

	padding:
		42px 18px
		16px;

	border:
		1px solid
		rgba(255,255,255,.12);

	border-radius: 18px;

	background:
		linear-gradient(
			135deg,
			rgba(255,255,255,.075),
			rgba(255,255,255,.025)
		);

	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);

	box-shadow:
		inset 0 1px 0
		rgba(255,255,255,.04);
}


/* tÃƒÆ’Ã‚Â­tulo do countdown sem alterar PHP */
.abadapp-hero-countdown::before {
	content: "OS JOGOS COME\00C7 AM EM...";

	position: absolute;

	top: 14px;
	left: 18px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .16em;

	color: #FB8400;
}


.abadapp-hero-countdown__number {
	font-size: clamp(28px,4vw,38px);
}


.abadapp-hero-countdown__label {
	color: #FB8400;

	font-size: 8px;
	font-weight: 900;
}


.abadapp-hero-countdown__separator {
	color: #FB8400;
}



/* =========================================================
   3. DATA + LOCAL
========================================================= */

.abadapp-event-meta {
	display: grid;

	grid-template-columns:
		repeat(2, minmax(0,1fr));

	gap: 10px;

	width: 100%;
	margin-top: 0;
}


.abadapp-event-meta > div {
	width: 100%;

	padding: 11px 14px;

	box-sizing: border-box;

	border-color:
		rgba(255,255,255,.12);

	background:
		rgba(255,255,255,.035);

	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}



/* =========================================================
   4. ESPAÃƒÆ’Ã¢â‚¬Â¡O HERO ÃƒÂ¢Ã¢â‚¬ Ã¢â‚¬â„¢ PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O
========================================================= */

.abadapp-upcoming {
	margin-top: 32px !important;

	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;

	background: transparent !important;

	box-shadow: none !important;
}



/* =========================================================
   5. PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O / DESTAQUES
========================================================= */

.abadapp-upcoming__header {
	align-items: flex-end;

	margin-bottom: 16px;
}


.abadapp-upcoming__eyebrow {
	margin-bottom: 7px;

	font-size: 9px;
}


.abadapp-upcoming__header h2 {
	font-size: 22px;
	line-height: 1.1;
}


/* 3 cards lado a lado */
.abadapp-upcoming__list {
	display: grid;

	grid-template-columns:
		repeat(3, minmax(0,1fr));

	gap: 10px;
}


/* card */
.abadapp-upcoming__item {
	position: relative;
	overflow: hidden;

	display: flex;
	flex-direction: column;
	align-items: flex-start;

	min-height: 145px;

	padding:
		58px 12px
		13px;

	border:
		1px solid
		rgba(255,255,255,.10);

	border-radius: 16px;

	background:
		linear-gradient(
			180deg,
			rgba(16,51,119,.58),
			rgba(4,16,58,.96)
		);

	box-shadow:
		0 12px 30px rgba(0,0,0,.10);
}


/* zona visual no topo do card */
.abadapp-upcoming__item::before {
	content: "";

	position: absolute;

	top: 0;
	left: 0;
	right: 0;

	height: 54px;

	background:
		radial-gradient(
			circle at 25% 40%,
			rgba(251,132,0,.70),
			transparent 42%
		),
		linear-gradient(
			135deg,
			#123E96,
			#06174E
		);

	opacity: .9;
}


/* variaÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Âµes para os 3 cards */
.abadapp-upcoming__item:nth-child(2)::before {
	background:
		radial-gradient(
			circle at 60% 35%,
			rgba(31,166,220,.72),
			transparent 45%
		),
		linear-gradient(
			135deg,
			#0C397B,
			#04113D
		);
}


.abadapp-upcoming__item:nth-child(3)::before {
	background:
		radial-gradient(
			circle at 60% 35%,
			rgba(179,52,171,.72),
			transparent 45%
		),
		linear-gradient(
			135deg,
			#3A176E,
			#07123F
		);
}


.abadapp-upcoming__time {
	position: relative;
	z-index: 2;

	display: inline-flex;
	align-items: center;

	margin-bottom: 6px;

	padding: 4px 7px;

	border-radius: 7px;

	background: #FB8400;

	font-size: 11px;
	line-height: 1;

	color: #FFFFFF;
}


.abadapp-upcoming__content {
	position: relative;
	z-index: 2;

	gap: 3px;
}


.abadapp-upcoming__content strong {
	font-size: 12px;
	line-height: 1.18;
}


.abadapp-upcoming__content span {
	font-size: 9px;
	line-height: 1.25;
}



/* botÃƒÆ’Ã‚Â£o continua como pediste */
.abadapp-upcoming__all {
	min-height: 48px;

	margin-top: 16px;

	border-radius: 13px;

	background:
		linear-gradient(
			90deg,
			#FB8400,
			#FF9C27
		);

	box-shadow:
		0 10px 25px
		rgba(251,132,0,.14);
}



/* =========================================================
   6. ESPAÃƒÆ’Ã¢â‚¬Â¡O PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O ÃƒÂ¢Ã¢â‚¬ Ã¢â‚¬â„¢ PASSAPORTE
========================================================= */

.abadapp-passport-card {
	margin-top: 30px !important;
}



/* =========================================================
   7. PASSAPORTE ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MAIS PREMIUM
========================================================= */

.abadapp-passport-card {
	padding: 26px 24px;

	border:
		1px solid
		rgba(255,255,255,.35);

	border-radius: 22px;

	background:
		linear-gradient(
			135deg,
			#FFF8EC 0%,
			#F7F2E8 70%,
			#FFF9F0 100%
		);

	box-shadow:
		0 18px 45px
		rgba(0,0,0,.10);
}


.abadapp-passport-card h2 {
	max-width: 460px;

	font-size: 28px;
	line-height: 1.05;
}


.abadapp-passport-card__stamp {
	top: -16px;
	right: -18px;

	width: 116px;
	height: 116px;

	opacity: .9;
}



/* =========================================================
   8. ESPAÃƒÆ’Ã¢â‚¬Â¡O PASSAPORTE ÃƒÂ¢Ã¢â‚¬ Ã¢â‚¬â„¢ INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS
========================================================= */

.abadapp-program__useful {
	margin-top: 34px !important;

	padding: 0 !important;

	border: 0 !important;
	border-radius: 0 !important;

	background: transparent !important;

	box-shadow: none !important;
}


.abadapp-program__useful h3 {
	margin-bottom: 15px;

	font-size: 18px;
	letter-spacing: .01em;
}



/* =========================================================
   9. INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â GRID 3 ÃƒÆ’Ã¢â‚¬â€ 2
========================================================= */

.abadapp-program__useful-grid {
	display: grid;

	grid-template-columns:
		repeat(3, minmax(0,1fr));

	gap: 10px;
}


.abadapp-program__useful-grid button {
	flex-direction: row;

	min-height: 64px;

	padding: 11px 10px;

	border:
		1px solid
		rgba(255,255,255,.095);

	border-radius: 14px;

	background:
		linear-gradient(
			145deg,
			rgba(255,255,255,.065),
			rgba(255,255,255,.028)
		);

	box-shadow:
		inset 0 1px 0
		rgba(255,255,255,.025);

	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}


.abadapp-program__useful-grid button > span {
	width: 30px;
	height: 30px;

	flex: 0 0 30px;

	border-radius: 9px;

	background:
		rgba(251,132,0,.11);
}


.abadapp-program__useful-grid strong {
	font-size: 10px;
	line-height: 1.25;
}


/* EmergÃƒÆ’Ã‚Âªncia continua diferenciada */
.abadapp-program__useful-grid
.abadapp-program__emergency {
	border-color:
		rgba(255,80,80,.28);

	background:
		linear-gradient(
			145deg,
			rgba(155,25,45,.24),
			rgba(80,15,35,.18)
		);
}



/* =========================================================
   10. RESPIRAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O ANTES DO MENU
   NÃƒÆ’Ã†â€™O ALTERA O MENU
========================================================= */

.abadapp-program__useful {
	margin-bottom: 28px;
}



/* =========================================================
   11. MOBILE
========================================================= */

@media (max-width: 600px) {

	/* HERO */

	.abadapp-hero {
		padding:
			22px 18px
			24px !important;

		border-radius: 22px;
	}


	.abadapp-hero__top {
		margin-bottom: 26px;
	}


	.abadapp-hero__copy {
		max-width: 61%;
	}


	.abadapp-hero__copy h1 {
		font-size: 34px;
		line-height: .98;
	}


	.abadapp-hero__copy p {
		max-width: 230px;

		margin-top: 15px;

		font-size: 12px;
		line-height: 1.55;
	}


	/* reativa arte que estava escondida em mobile */
	.abadapp-hero__art {
		display: flex !important;

		top: 62px;
		right: -34px;

		width: 62%;
		height: 285px !important;

		opacity: .95;
	}


	.abadapp-hero__art-image {
		height: 100% !important;
	}


	/* COUNTDOWN */

	.abadapp-hero-countdown {
		margin-top: 28px;

		padding:
			38px 8px
			14px;

		border-radius: 15px;
	}


	.abadapp-hero-countdown::before {
		top: 12px;
		left: 12px;

		font-size: 8px;
	}


	.abadapp-hero-countdown__number {
		font-size: 25px;
	}


	.abadapp-hero-countdown__separator {
		font-size: 21px;
	}


	.abadapp-hero-countdown__label {
		font-size: 6px;
	}


	/* META */

	.abadapp-event-meta {
		grid-template-columns:
			repeat(2,minmax(0,1fr));

		gap: 8px;
	}


	.abadapp-event-meta > div {
		padding: 10px 9px;
	}


	.abadapp-event-meta span {
		font-size: 9px;
	}


	.abadapp-event-meta svg {
		width: 15px;
		height: 15px;
	}


	/* ESPAÃƒÆ’Ã¢â‚¬Â¡OS ENTRE SECÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES */

	.abadapp-upcoming {
		margin-top: 32px !important;
	}


	.abadapp-passport-card {
		margin-top: 30px !important;
		margin-bottom: 0 !important;
	}


	.abadapp-program__useful {
		margin-top: 34px !important;
		margin-bottom: 28px !important;
	}


	/* DESTAQUES */

	.abadapp-upcoming__list {
		grid-template-columns:
			repeat(3,minmax(0,1fr));

		gap: 8px;
	}


	.abadapp-upcoming__item {
		min-height: 138px;

		padding:
			55px 9px
			11px;

		border-radius: 14px;
	}


	.abadapp-upcoming__content strong {
		font-size: 10px;
	}


	.abadapp-upcoming__content span {
		font-size: 8px;
	}


	/* PASSAPORTE */

	.abadapp-passport-card {
		padding:
			22px 20px;
	}


	.abadapp-passport-card h2 {
		font-size: 25px;
	}


	/* INFO GRID */

	.abadapp-program__useful-grid {
		grid-template-columns:
			repeat(3,minmax(0,1fr));

		gap: 8px;
	}


	.abadapp-program__useful-grid button {
		min-height: 62px;

		padding: 9px 8px;

		gap: 8px;
	}


	.abadapp-program__useful-grid button > span {
		width: 27px;
		height: 27px;

		flex-basis: 27px;

		font-size: 13px;
	}


	.abadapp-program__useful-grid strong {
		font-size: 8px;
	}

}


/* =========================================================
   12. IPHONE PEQUENO
========================================================= */

@media (max-width: 390px) {

	.abadapp-hero__copy {
		max-width: 64%;
	}


	.abadapp-hero__copy h1 {
		font-size: 31px;
	}


	.abadapp-hero__art {
		right: -40px;

		width: 65%;
	}


	.abadapp-upcoming__list,
	.abadapp-program__useful-grid {
		gap: 7px;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â HERO PHOTO FIX
   Background temporÃƒÆ’Ã‚Â¡rio
   NÃƒÆ’Ã†â€™O ALTERA MENU NAV
========================================================= */

.abadapp-hero {
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate;

	background-image:
		linear-gradient(
			90deg,
			rgba(2,12,59,.98) 0%,
			rgba(2,12,59,.94) 30%,
			rgba(2,12,59,.68) 56%,
			rgba(2,12,59,.24) 78%,
			rgba(2,12,59,.12) 100%
		),
		linear-gradient(
			0deg,
			rgba(2,12,59,.80) 0%,
			rgba(2,12,59,.10) 55%,
			rgba(2,12,59,.16) 100%
		),
		url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/heroe-image-1-1.png") !important;

	background-size:
		cover !important;

	background-repeat:
		no-repeat !important;

	background-position:
		68% center !important;

	border:
		1px solid rgba(255,255,255,.07) !important;

	box-shadow:
		0 28px 70px rgba(0,0,0,.20) !important;
}


/* Remove completamente a antiga arte interna */
.abadapp-hero__art {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}


/* Neutraliza overlays anteriores que estavam a criar
   aquelas linhas / interferÃƒÆ’Ã‚Âªncias */
.abadapp-hero::before {
	content: "" !important;

	position: absolute;
	inset: 0;

	z-index: 0;

	background:
		radial-gradient(
			circle at 82% 30%,
			rgba(35,95,180,.20),
			transparent 42%
		) !important;

	opacity: 1 !important;

	pointer-events: none;
}


.abadapp-hero::after {
	content: "" !important;

	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;

	height: 38%;

	z-index: 0;

	background:
		linear-gradient(
			0deg,
			rgba(2,12,59,.96),
			transparent
		) !important;

	pointer-events: none;
}


/* Todo o conteÃƒÆ’Ã‚Âºdo do Hero fica acima da fotografia */
.abadapp-hero__top,
.abadapp-hero__content,
.abadapp-hero__copy,
.abadapp-hero-countdown,
.abadapp-event-meta {
	position: relative !important;
	z-index: 3 !important;
}


/* =========================================================
   DESKTOP / TABLET
========================================================= */

.abadapp-hero__content {
	display: block !important;
}


.abadapp-hero__copy {
	max-width: 560px !important;
}


.abadapp-hero__copy h1 {
	max-width: 540px !important;

	font-size:
		clamp(42px,5vw,62px) !important;

	line-height:
		.98 !important;
}


.abadapp-hero__copy p {
	max-width: 430px !important;
}


/* Countdown ocupa largura e ancora o Hero */
.abadapp-hero-countdown {
	width: 100% !important;

	box-sizing: border-box;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp-hero {
		padding:
			24px 18px
			24px !important;

		background-position:
			66% center !important;

		border-radius:
			22px !important;
	}


	/*
	 * Mais overlay no mobile porque temos menos
	 * espaÃƒÆ’Ã‚Â§o fÃƒÆ’Ã‚Â­sico entre texto e fotografia.
	 */
	.abadapp-hero {
		background-image:
			linear-gradient(
				90deg,
				rgba(2,12,59,.99) 0%,
				rgba(2,12,59,.94) 36%,
				rgba(2,12,59,.60) 67%,
				rgba(2,12,59,.22) 100%
			),
			linear-gradient(
				0deg,
				rgba(2,12,59,.94) 0%,
				rgba(2,12,59,.18) 62%,
				rgba(2,12,59,.18) 100%
			),
			url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/ChatGPT-Image-Aug-17-2026-05_00_25-PM.png") !important;
	}


	.abadapp-hero__top {
		margin-bottom:
			32px !important;
	}


	/* Agora jÃƒÆ’Ã‚Â¡ nÃƒÆ’Ã‚Â£o fazemos aquela coluna super estreita */
	.abadapp-hero__copy {
		width: 100% !important;
		max-width: 78% !important;

		min-height: 0 !important;
		height: auto !important;
	}


	.abadapp-hero__copy h1 {
		max-width: 290px !important;

		font-size:
			36px !important;

		line-height:
			.98 !important;
	}


	.abadapp-hero__copy p {
		max-width:
			245px !important;

		font-size:
			12px !important;

		line-height:
			1.55 !important;
	}


	/* deixa a fotografia respirar antes do countdown */
	.abadapp-hero-countdown {
		margin-top:
			72px !important;
	}


	.abadapp-event-meta {
		margin-top:
			10px !important;
	}

}


/* =========================================================
   IPHONE ESTREITO
========================================================= */

@media (max-width: 390px) {

	.abadapp-hero {
		background-position:
			64% center !important;
	}


	.abadapp-hero__copy {
		max-width:
			82% !important;
	}


	.abadapp-hero__copy h1 {
		max-width:
			280px !important;

		font-size:
			34px !important;
	}


	.abadapp-hero-countdown {
		margin-top:
			64px !important;
	}

}

/* =========================================================
   ABADAPP HOME V2.1 ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â REAL DEVICE CORRECTIONS
   NÃƒÆ’Ã†â€™O TOCA NO MENU NAV
========================================================= */


/* =========================================================
   HERO
========================================================= */

.abadapp-hero {
	background-image:
		linear-gradient(
			90deg,
			#020C3B 0%,
			#020C3B 34%,
			rgba(2,12,59,.88) 48%,
			rgba(2,12,59,.32) 72%,
			rgba(2,12,59,.12) 100%
		),
		linear-gradient(
			0deg,
			#020C3B 0%,
			rgba(2,12,59,.15) 58%,
			rgba(2,12,59,.10) 100%
		),
		url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/ChatGPT-Image-Aug-17-2026-05_00_25-PM.png") !important;

	background-size:
		100% 100%,
		100% 100%,
		auto 100% !important;

	background-position:
		center,
		center,
		right center !important;

	background-repeat:
		no-repeat !important;

	padding-bottom: 26px !important;
}


/* elimina overlays que estÃƒÆ’Ã‚Â£o a sujar a imagem */
.abadapp-hero::before,
.abadapp-hero::after {
	display: none !important;
}


/* texto */
.abadapp-hero__copy {
	width: 100% !important;
	max-width: 58% !important;
}


.abadapp-hero__copy h1 {
	max-width: 100% !important;

	font-size: 42px !important;
	line-height: .98 !important;
	letter-spacing: -.035em;
}


.abadapp-hero__copy p {
	max-width: 330px !important;

	font-size: 13px !important;
	line-height: 1.55 !important;

	color: rgba(255,255,255,.82);
}


/* menos buraco antes do countdown */
.abadapp-hero-countdown {
	margin-top: 42px !important;
}



/* =========================================================
   PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O
========================================================= */

.abadapp-upcoming {
	margin-top: 34px !important;
}


/* VOLTAR TÃƒÆ’Ã‚ÂTULO PARA A ESQUERDA */
.abadapp-upcoming__header {
	align-items: flex-start !important;
	text-align: left !important;
}


.abadapp-upcoming__header > div {
	width: 100%;
}


.abadapp-upcoming__header h2 {
	margin: 0 !important;

	text-align: left !important;

	font-size: 25px !important;
}


/*
 * Em vez de esmagar 3 cards dentro do ecrÃƒÆ’Ã‚Â£,
 * fazemos uma faixa horizontal.
 */
.abadapp-upcoming__list {
	display: flex !important;

	gap: 12px !important;

	overflow-x: auto;

	padding:
		2px 2px
		8px;

	scroll-snap-type: x mandatory;

	-webkit-overflow-scrolling:
		touch;

	scrollbar-width: none;
}


.abadapp-upcoming__list::-webkit-scrollbar {
	display: none;
}


.abadapp-upcoming__item {
	flex:
		0 0
		148px !important;

	width: 148px !important;

	min-height: 170px !important;

	padding:
		70px 13px
		14px !important;

	scroll-snap-align: start;
}


.abadapp-upcoming__item::before {
	height: 66px !important;
}


.abadapp-upcoming__content strong {
	font-size: 12px !important;
	line-height: 1.2 !important;
}


.abadapp-upcoming__content span {
	font-size: 9px !important;
}



/* =========================================================
   PASSAPORTE
========================================================= */

.abadapp-passport-card {
	margin-top: 32px !important;
}



/* =========================================================
   INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS
========================================================= */

.abadapp-program__useful {
	margin-top: 34px !important;
}


/*
 * 2 colunas no telefone.
 * Muito mais legÃƒÆ’Ã‚Â­vel que 3 ÃƒÆ’Ã¢â‚¬â€ 2.
 */
.abadapp-program__useful-grid {
	grid-template-columns:
		repeat(2, minmax(0,1fr))
		!important;

	gap: 10px !important;
}


.abadapp-program__useful-grid button {
	min-height: 66px !important;

	padding:
		11px 12px !important;
}


.abadapp-program__useful-grid strong {
	font-size: 10px !important;
}



/* =========================================================
   MOBILE REAL
========================================================= */

@media (max-width: 600px) {

	.abadapp-hero {
		min-height: 0 !important;

		padding:
			22px 18px
			24px !important;

		background-size:
			100% 100%,
			100% 100%,
			auto 100% !important;

		background-position:
			center,
			center,
			72% center !important;
	}


	.abadapp-hero__top {
		margin-bottom:
			30px !important;
	}


	/*
	 * O tÃƒÆ’Ã‚Â­tulo deixa de ficar absurdamente estreito,
	 * mas ainda deixa a imagem aparecer ÃƒÆ’  direita.
	 */
	.abadapp-hero__copy {
		max-width:
			72% !important;
	}


	.abadapp-hero__copy h1 {
		font-size:
			34px !important;

		max-width:
			280px !important;
	}


	.abadapp-hero__copy p {
		max-width:
			235px !important;

		font-size:
			11px !important;
	}


	/*
	 * NÃƒÆ’Ã‚Â£o precisamos daquele enorme espaÃƒÆ’Ã‚Â§o vazio.
	 */
	.abadapp-hero-countdown {
		margin-top:
			46px !important;
	}


	/* Countdown ligeiramente maior */
	.abadapp-hero-countdown__number {
		font-size:
			27px !important;
	}


	/* programaÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o */
	.abadapp-upcoming {
		margin-top:
			36px !important;
	}


	.abadapp-upcoming__header {
		margin-bottom:
			16px !important;
	}


	/* passaporte */
	.abadapp-passport-card {
		margin-top:
			32px !important;
	}


	/* infos */
	.abadapp-program__useful {
		margin-top:
			34px !important;

		margin-bottom:
			30px !important;
	}

}



/* =========================================================
   IPHONE 393px
========================================================= */

@media (max-width: 400px) {

	.abadapp-hero__copy {
		max-width:
			76% !important;
	}


	.abadapp-hero__copy h1 {
		font-size:
			32px !important;
	}


	.abadapp-upcoming__item {
		flex-basis:
			142px !important;

		width:
			142px !important;
	}

}


/* =========================================================
   ABADAPP V2.2
   NOTIFICATIONS FIX + HOME POLISH
   NÃƒÆ’Ã†â€™O ALTERA O MENU NAV
========================================================= */


/* =========================================================
   1. FIX NOTIFICAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES
========================================================= */

/*
 * Remove o stacking context que criÃƒÆ’Ã‚Â¡mos no Hero.
 * Assim o painel de notificaÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Âµes consegue ficar
 * realmente acima do backdrop.
 */
.abadapp-hero {
	isolation: auto !important;
}


/* backdrop continua atrÃƒÆ’Ã‚Â¡s */
.abadapp::before {
	z-index: 900 !important;
}


/* painel sempre acima */
.abadapp-notifications-panel {
	z-index: 1000 !important;

	background: #FFFFFF !important;

	opacity: 1 !important;

	filter: none !important;

	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;

	box-shadow:
		0 24px 70px
		rgba(0,0,0,.28) !important;
}


/* header branco sem transparÃƒÆ’Ã‚Âªncias */
.abadapp-notifications-panel__header {
	position: relative;
	z-index: 2;

	background: #FFFFFF !important;
}


/* ÃƒÆ’Ã‚Â¡rea das mensagens */
.abadapp-notifications-panel__list {
	position: relative;
	z-index: 2;

	background:
		linear-gradient(
			180deg,
			#F8FAFF 0%,
			#EFF4FC 100%
		) !important;
}


/* =========================================================
   2. FUNDO GERAL ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MENOS NAVY CHAPADO
========================================================= */

.abadapp {
	background:
		radial-gradient(
			circle at 50% 12%,
			rgba(18,62,150,.16),
			transparent 28%
		),
		linear-gradient(
			180deg,
			#020C3B 0%,
			#031148 38%,
			#020C3B 78%,
			#01082B 100%
		) !important;
}


/* =========================================================
   3. HERO ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â LIMPAR UM POUCO A ÃƒÆ’Ã‚ÂREA DO TEXTO
========================================================= */

.abadapp-hero {
	background-image:
		linear-gradient(
			90deg,
			#020C3B 0%,
			rgba(2,12,59,.98) 26%,
			rgba(2,12,59,.90) 43%,
			rgba(2,12,59,.50) 62%,
			rgba(2,12,59,.10) 100%
		),
		linear-gradient(
			0deg,
			rgba(2,12,59,.95) 0%,
			rgba(2,12,59,.14) 54%,
			rgba(2,12,59,.10) 100%
		),
		url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/ChatGPT-Image-Aug-17-2026-05_00_25-PM.png") !important;

	background-size:
		100% 100%,
		100% 100%,
		auto 100% !important;

	background-position:
		center,
		center,
		76% center !important;

	background-repeat:
		no-repeat !important;
}


/*
 * O texto fica um pouco menos em cima
 * da parte mais detalhada da imagem.
 */
.abadapp-hero__copy {
	max-width: 68% !important;
}


.abadapp-hero__copy h1 {
	max-width: 300px !important;
}



/* =========================================================
   4. COUNTDOWN ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â UM POUCO MAIS IMPORTANTE
========================================================= */

.abadapp-hero-countdown {
	min-height: 92px;

	padding:
		40px 14px
		15px !important;

	border-color:
		rgba(255,255,255,.14) !important;

	background:
		linear-gradient(
			135deg,
			rgba(10,30,83,.88),
			rgba(8,21,65,.72)
		) !important;

	box-shadow:
		inset 0 1px 0
		rgba(255,255,255,.05),
		0 12px 30px
		rgba(0,0,0,.12);
}


.abadapp-hero-countdown__number {
	font-size: 30px !important;
}



/* =========================================================
   5. DESTAQUES ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â FOTO TEMPORÃƒÆ’Ã‚ÂRIA
========================================================= */

/*
 * Enquanto nÃƒÆ’Ã‚Â£o tivermos 3 fotografias finais,
 * usamos a imagem atual como crop fotogrÃƒÆ’Ã‚Â¡fico.
 */

.abadapp-upcoming__item::before {
	height: 78px !important;

	background-image:
		linear-gradient(
			180deg,
			rgba(2,12,59,.02),
			rgba(2,12,59,.12)
		),
		url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/ChatGPT-Image-Aug-17-2026-05_00_25-PM.png") !important;

	background-size:
		cover !important;

	background-repeat:
		no-repeat !important;

	opacity: 1 !important;
}


/* crops diferentes */
.abadapp-upcoming__item:nth-child(1)::before {
	background-position:
		18% 58% !important;
}


.abadapp-upcoming__item:nth-child(2)::before {
	background-position:
		53% 66% !important;
}


.abadapp-upcoming__item:nth-child(3)::before {
	background-position:
		88% 58% !important;
}


.abadapp-upcoming__item {
	min-height: 182px !important;

	padding:
		83px 13px
		14px !important;

	background:
		linear-gradient(
			180deg,
			#071B58 0%,
			#04113D 100%
		) !important;
}



/* =========================================================
   6. MAIS RESPIRAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O
========================================================= */

.abadapp-upcoming {
	margin-top: 40px !important;
}


.abadapp-passport-card {
	margin-top: 38px !important;
}


.abadapp-program__useful {
	margin-top: 38px !important;
}



/* =========================================================
   7. INFO CARDS ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MAIS CONFORTÃƒÆ’Ã‚ÂVEIS
========================================================= */

.abadapp-program__useful-grid button {
	min-height: 74px !important;

	padding:
		13px 14px !important;

	border-radius:
		15px !important;
}


.abadapp-program__useful-grid button > span {
	width: 34px !important;
	height: 34px !important;

	flex-basis:
		34px !important;

	font-size:
		15px !important;
}


.abadapp-program__useful-grid strong {
	font-size:
		10px !important;

	line-height:
		1.25 !important;
}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp-hero {
		background-position:
			center,
			center,
			76% center !important;
	}


	.abadapp-hero__copy {
		max-width:
			70% !important;
	}


	.abadapp-hero__copy h1 {
		max-width:
			285px !important;
	}


	.abadapp-hero-countdown {
		margin-top:
			52px !important;
	}


	.abadapp-upcoming {
		margin-top:
			40px !important;
	}


	.abadapp-passport-card {
		margin-top:
			38px !important;
	}


	.abadapp-program__useful {
		margin-top:
			38px !important;
	}

}

/* =========================================================
   ABADAPP HOME V2.3
   HERO PROPORTIONS + DESTAQUES
   MENU NAV: NÃƒÆ’Ã†â€™O TOCAR
========================================================= */


/* =========================================================
   1. HERO ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â O CONTAINER OCUPA TODA A LARGURA
   MAS O TEXTO FICA APENAS ÃƒÆ’Ã¢â€šÂ¬ ESQUERDA
========================================================= */

.abadapp-hero__copy {
	width: 100% !important;
	max-width: 100% !important;
}


/* texto editorial ÃƒÆ’  esquerda */
.abadapp-hero__eyebrow {
	max-width: 64%;
}


.abadapp-hero__copy h1 {
	width: 64% !important;
	max-width: 300px !important;

	margin-right: auto;

	font-size: 35px !important;
	line-height: .98 !important;
}


.abadapp-hero__copy > p {
	width: 58% !important;
	max-width: 250px !important;

	margin-right: auto;

	font-size: 11px !important;
	line-height: 1.55 !important;
}



/* =========================================================
   2. COUNTDOWN ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â AGORA SIM, LARGO COMO NO MOCKUP
========================================================= */

.abadapp-hero-countdown {
	width: 100% !important;
	max-width: none !important;

	margin:
		32px 0
		12px !important;

	min-height: 96px !important;

	padding:
		41px 14px
		15px !important;

	box-sizing: border-box;

	border-radius: 17px !important;
}


.abadapp-hero-countdown__number {
	font-size: 31px !important;
	line-height: 1 !important;
}


.abadapp-hero-countdown__label {
	margin-top: 5px;

	font-size: 7px !important;
	letter-spacing: .10em;
}



/* =========================================================
   3. DATA + LOCAL ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â TAMBÃƒÆ’Ã¢â‚¬Â°M LARGOS
========================================================= */

.abadapp-event-meta {
	width: 100% !important;
	max-width: none !important;

	display: grid !important;
	grid-template-columns:
		repeat(2, minmax(0,1fr))
		!important;

	gap: 10px !important;
}


.abadapp-event-meta > div {
	min-height: 48px;

	display: flex;
	align-items: center;

	padding:
		10px 13px !important;

	border-radius:
		14px !important;
}


.abadapp-event-meta span {
	font-size:
		10px !important;

	line-height:
		1.3 !important;
}



/* =========================================================
   4. HERO BACKGROUND ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â FOTO MAIS CLARA ÃƒÆ’Ã¢â€šÂ¬ DIREITA
========================================================= */

.abadapp-hero {
	background-image:
		linear-gradient(
			90deg,
			#020C3B 0%,
			rgba(2,12,59,.98) 24%,
			rgba(2,12,59,.90) 42%,
			rgba(2,12,59,.42) 62%,
			rgba(2,12,59,.06) 100%
		),
		linear-gradient(
			0deg,
			rgba(2,12,59,.94) 0%,
			rgba(2,12,59,.08) 52%,
			rgba(2,12,59,.10) 100%
		),
		url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/ChatGPT-Image-Aug-17-2026-05_00_25-PM.png")
		!important;

	background-size:
		100% 100%,
		100% 100%,
		auto 100%
		!important;

	background-position:
		center,
		center,
		79% center
		!important;
}



/* =========================================================
   5. PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â CARDS UM POUCO MAIS PREMIUM
========================================================= */

.abadapp-upcoming__list {
	gap: 12px !important;

	padding-bottom:
		6px !important;
}


.abadapp-upcoming__item {
	flex:
		0 0 160px !important;

	width:
		160px !important;

	min-height:
		190px !important;

	padding:
		94px 13px
		14px !important;

	border-radius:
		17px !important;
}


/* zona de foto maior */
.abadapp-upcoming__item::before {
	height:
		88px !important;

	background-size:
		230% auto !important;

	background-repeat:
		no-repeat !important;
}


/*
 * Mesma fotografia temporÃƒÆ’Ã‚Â¡ria,
 * mas com crops muito diferentes.
 */
.abadapp-upcoming__item:nth-child(1)::before {
	background-position:
		12% 48% !important;
}


.abadapp-upcoming__item:nth-child(2)::before {
	background-position:
		51% 64% !important;
}


.abadapp-upcoming__item:nth-child(3)::before {
	background-position:
		91% 42% !important;
}


.abadapp-upcoming__time {
	margin-bottom:
		8px !important;

	padding:
		5px 8px !important;

	font-size:
		10px !important;

	border-radius:
		7px !important;
}


.abadapp-upcoming__content strong {
	font-size:
		12px !important;

	line-height:
		1.22 !important;
}


.abadapp-upcoming__content span {
	margin-top:
		3px;

	font-size:
		9px !important;
}



/* =========================================================
   6. VER PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â FORÃƒÆ’Ã¢â‚¬Â¡AR BOTÃƒÆ’Ã†â€™O REAL
========================================================= */

.abadapp-upcoming__all {
	position: relative !important;
	z-index: 5 !important;

	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;

	width: 100% !important;
	height: auto !important;
	min-height: 50px !important;

	margin:
		16px 0
		0 !important;

	padding:
		0 17px !important;

	box-sizing:
		border-box !important;

	overflow:
		visible !important;

	border:
		0 !important;

	border-radius:
		14px !important;

	background:
		linear-gradient(
			90deg,
			#FB8400,
			#FF9D28
		) !important;

	font-size:
		12px !important;

	font-weight:
		900 !important;

	line-height:
		1 !important;

	color:
		#FFFFFF !important;

	opacity:
		1 !important;
}



/* =========================================================
   7. MAIS AR ENTRE AS GRANDES SECÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES
========================================================= */

.abadapp-passport-card {
	margin-top:
		42px !important;
}


.abadapp-program__useful {
	margin-top:
		42px !important;
}



/* =========================================================
   8. INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â UM POUCO MAIS PREMIUM
========================================================= */

.abadapp-program__useful h3 {
	margin-bottom:
		18px !important;
}


.abadapp-program__useful-grid {
	gap:
		11px !important;
}


.abadapp-program__useful-grid button {
	min-height:
		76px !important;

	padding:
		13px 14px !important;

	border-color:
		rgba(255,255,255,.12) !important;

	background:
		linear-gradient(
			145deg,
			rgba(255,255,255,.075),
			rgba(255,255,255,.035)
		) !important;
}


.abadapp-program__useful-grid strong {
	font-size:
		11px !important;
}



/* =========================================================
   MOBILE PEQUENO
========================================================= */

@media (max-width: 400px) {

	.abadapp-hero__copy h1 {
		width:
			68% !important;

		font-size:
			33px !important;
	}


	.abadapp-hero__copy > p {
		width:
			61% !important;
	}


	.abadapp-hero-countdown {
		margin-top:
			30px !important;

		min-height:
			90px !important;
	}


	.abadapp-hero-countdown__number {
		font-size:
			28px !important;
	}


	.abadapp-upcoming__item {
		flex-basis:
			154px !important;

		width:
			154px !important;
	}

}

/* =========================================================
   ABADAPP HOME V2.4 ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â POLISH
   MENU NAV INTOCÃƒÆ’Ã‚ÂVEL
========================================================= */


/* =========================================================
   1. HERO ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MAIS LIMPO E EDITORIAL
========================================================= */

.abadapp-hero {
	background-image:
		linear-gradient(
			90deg,
			#020C3B 0%,
			rgba(2,12,59,.995) 28%,
			rgba(2,12,59,.93) 44%,
			rgba(2,12,59,.48) 64%,
			rgba(2,12,59,.05) 100%
		),
		linear-gradient(
			0deg,
			rgba(2,12,59,.94) 0%,
			rgba(2,12,59,.05) 52%,
			rgba(2,12,59,.06) 100%
		),
		url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/ChatGPT-Image-Aug-17-2026-05_00_25-PM.png")
		!important;

	background-position:
		center,
		center,
		82% center
		!important;
}


/* tÃƒÆ’Ã‚Â­tulo ligeiramente mais compacto */
.abadapp-hero__copy h1 {
	width: 68% !important;
	max-width: 315px !important;

	font-size: 34px !important;
	line-height: .96 !important;

	letter-spacing: -.04em !important;
}


/* intro um pouco mais leve */
.abadapp-hero__copy > p {
	width: 59% !important;
	max-width: 255px !important;

	margin-top: 15px !important;

	color: rgba(255,255,255,.76) !important;
}



/* =========================================================
   2. COUNTDOWN ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MAIS FINO
========================================================= */

.abadapp-hero-countdown {
	margin-top: 34px !important;

	border:
		1px solid
		rgba(255,255,255,.14) !important;

	background:
		linear-gradient(
			135deg,
			rgba(9,30,83,.82),
			rgba(4,15,57,.72)
		) !important;

	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
}


.abadapp-hero-countdown__number {
	font-size: 30px !important;
}



/* =========================================================
   3. DATA + LOCAL ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MAIS ELEGANTES
========================================================= */

.abadapp-event-meta {
	grid-template-columns:
		.92fr 1.08fr
		!important;
}


.abadapp-event-meta > div {
	min-width: 0;

	min-height: 46px;

	border:
		1px solid
		rgba(255,255,255,.12) !important;

	background:
		rgba(255,255,255,.035) !important;

	border-radius:
		999px !important;
}


.abadapp-event-meta span {
	white-space: nowrap !important;

	font-size: 9px !important;
}



/* =========================================================
   4. PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MAIS FOTO, MENOS CARD AZUL
========================================================= */

.abadapp-upcoming {
	margin-top: 46px !important;
}


.abadapp-upcoming__header {
	margin-bottom: 18px !important;
}


.abadapp-upcoming__header h2 {
	font-size: 27px !important;
}


.abadapp-upcoming__list {
	gap: 14px !important;
}


.abadapp-upcoming__item {
	flex:
		0 0 172px !important;

	width:
		172px !important;

	min-height:
		202px !important;

	padding:
		108px 14px
		15px !important;

	border:
		1px solid
		rgba(255,255,255,.10) !important;

	border-radius:
		18px !important;

	background:
		linear-gradient(
			180deg,
			#07184D,
			#03103F
		) !important;

	box-shadow:
		0 14px 32px rgba(0,0,0,.13);
}


/* imagem maior */
.abadapp-upcoming__item::before {
	height: 102px !important;

	background-size:
		210% auto !important;
}


/* pequena transiÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o fotografia ÃƒÂ¢Ã¢â‚¬ Ã¢â‚¬â„¢ conteÃƒÆ’Ã‚Âºdo */
.abadapp-upcoming__item::after {
	content: "";

	position: absolute;

	top: 55px;
	left: 0;
	right: 0;

	height: 55px;

	background:
		linear-gradient(
			180deg,
			transparent,
			#07184D
		);

	pointer-events: none;
}


.abadapp-upcoming__time,
.abadapp-upcoming__content {
	position: relative;
	z-index: 4;
}


.abadapp-upcoming__content strong {
	font-size: 13px !important;
}


.abadapp-upcoming__content span {
	font-size: 9px !important;

	color:
		rgba(255,255,255,.62) !important;
}



/* =========================================================
   5. VER PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â MENOS "BOTÃƒÆ’Ã†â€™O LARANJA GIGANTE"
========================================================= */

.abadapp-upcoming__all {
	min-height: 52px !important;

	margin-top: 18px !important;

	padding:
		0 18px !important;

	border:
		1px solid
		rgba(255,255,255,.12) !important;

	background:
		linear-gradient(
			135deg,
			rgba(255,255,255,.075),
			rgba(255,255,255,.035)
		) !important;

	color:
		#FFFFFF !important;

	box-shadow:
		none !important;

	backdrop-filter:
		blur(10px);

	-webkit-backdrop-filter:
		blur(10px);
}


/* seta continua ABADÃƒÆ’Ã‚Â */
.abadapp-upcoming__all span {
	color:
		#FB8400 !important;

	font-size:
		18px !important;
}



/* =========================================================
   6. PASSAPORTE
   SÃƒÆ’Ã‚Â³ respiraÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o. Design fica quieto.
========================================================= */

.abadapp-passport-card {
	margin-top:
		44px !important;
}



/* =========================================================
   7. INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS
========================================================= */

.abadapp-program__useful {
	margin-top:
		44px !important;
}


.abadapp-program__useful h3 {
	font-size:
		20px !important;

	margin-bottom:
		18px !important;
}


.abadapp-program__useful-grid {
	gap:
		12px !important;
}


.abadapp-program__useful-grid button {
	min-height:
		78px !important;

	padding:
		13px 15px !important;

	gap:
		11px !important;

	border-radius:
		16px !important;

	background:
		linear-gradient(
			145deg,
			rgba(255,255,255,.07),
			rgba(255,255,255,.025)
		) !important;
}


.abadapp-program__useful-grid button > span {
	width:
		37px !important;

	height:
		37px !important;

	flex:
		0 0 37px !important;

	border-radius:
		11px !important;

	background:
		rgba(251,132,0,.13) !important;

	color:
		#FB8400 !important;

	font-size:
		16px !important;
}


.abadapp-program__useful-grid strong {
	font-size:
		11px !important;

	line-height:
		1.25 !important;
}



/* emergÃƒÆ’Ã‚Âªncia mantÃƒÆ’Ã‚Â©m personalidade */
.abadapp-program__useful-grid
.abadapp-program__emergency
> span {
	background:
		rgba(255,76,76,.15) !important;

	color:
		#FF6060 !important;
}



/* =========================================================
   IPHONE 393 / MOBILE PEQUENO
========================================================= */

@media (max-width: 400px) {

	.abadapp-hero__copy h1 {
		width:
			72% !important;

		max-width:
			278px !important;

		font-size:
			31px !important;
	}


	.abadapp-hero__copy > p {
		width:
			64% !important;

		max-width:
			235px !important;
	}


	.abadapp-event-meta span {
		font-size:
			8px !important;
	}


	.abadapp-upcoming__item {
		flex-basis:
			162px !important;

		width:
			162px !important;
	}

}

/* =========================================================
   HERO ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â FIX LINHA LATERAL DO BACKGROUND
========================================================= */

.abadapp-hero {

	/*
	 * Fazemos a fotografia ultrapassar ligeiramente
	 * os limites do Hero para nunca aparecer a borda
	 * original da imagem.
	 */
	background-size:
		100% 100%,
		100% 100%,
		auto 106%
		!important;

	background-position:
		center,
		center,
		84% center
		!important;


	/*
	 * Pequena proteÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o navy no lado esquerdo.
	 * Cobre qualquer pixel residual da fotografia.
	 */
	box-shadow:
		inset 5px 0 0 #020C3B,
		0 28px 70px rgba(0,0,0,.20)
		!important;
}


/* iPhone / mobile */
@media (max-width: 600px) {

	.abadapp-hero {
		background-size:
			100% 100%,
			100% 100%,
			auto 108%
			!important;

		background-position:
			center,
			center,
			85% center
			!important;
	}

}

/* =========================================================
   HERO ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â REMOVE 1PX PHOTO LEAK
========================================================= */

.abadapp-hero {
	/* a fotografia jÃƒÆ’Ã‚Â¡ nÃƒÆ’Ã‚Â£o pode pintar por baixo da borda */
	background-clip: padding-box !important;
	background-origin: padding-box !important;

	/* borda esquerda completamente opaca */
	border-left: 2px solid #020C3B !important;
}

/* reforÃƒÆ’Ã‚Â§o mobile para Safari/Chrome */
@media (max-width: 600px) {
	.abadapp-hero {
		background-clip: padding-box !important;
		border-left-color: #020C3B !important;
	}
}

/* =========================================================
   HOME ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â UNIFICAR TÃƒÆ’Ã‚ÂTULOS PRINCIPAIS
========================================================= */

.abadapp-upcoming__header h2,
.abadapp-passport-card h2,
.abadapp-program__useful h3 {
	margin-top: 0 !important;

	font-size: 30px !important;
	font-weight: 900 !important;
	line-height: 1.05 !important;
	letter-spacing: -.025em !important;
}


/* manter as cores prÃƒÆ’Ã‚Â³prias de cada secÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o */
.abadapp-upcoming__header h2,
.abadapp-program__useful h3 {
	color: #FFFFFF !important;
}

.abadapp-passport-card h2 {
	color: #020C3B !important;
}


/* MOBILE */
@media (max-width: 600px) {

	.abadapp-upcoming__header h2,
	.abadapp-passport-card h2,
	.abadapp-program__useful h3 {
		font-size: 27px !important;
		line-height: 1.05 !important;
	}

}

/* =========================================================
   HOME ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â SECTION HEADING / PASSAPORTE
========================================================= */

.abadapp-home-section-heading {
	margin-top: 44px;
	margin-bottom: 18px;
}


.abadapp-home-section-heading__eyebrow {
	display: block;

	margin-bottom: 7px;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .15em;

	color: #FB8400;
}


.abadapp-home-section-heading h2 {
	margin: 0;

	font-size: 30px;
	font-weight: 900;
	line-height: 1.05;
	letter-spacing: -.025em;

	color: #FFFFFF;
}


/* O card jÃƒÆ’Ã‚Â¡ nÃƒÆ’Ã‚Â£o precisa de criar o espaÃƒÆ’Ã‚Â§o da secÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o */
.abadapp-home-section-heading + .abadapp-passport-card {
	margin-top: 0 !important;
}


/* Dentro do card jÃƒÆ’Ã‚Â¡ nÃƒÆ’Ã‚Â£o queremos repetir o heading */
.abadapp-passport-card__eyebrow {
	display: none !important;
}


.abadapp-passport-card > h2 {
	display: none !important;
}


@media (max-width: 600px) {

	.abadapp-home-section-heading {
		margin-top: 44px;
		margin-bottom: 18px;
	}


	.abadapp-home-section-heading h2 {
		font-size: 27px;
	}

}

/* =========================================================
   HOME ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â SISTEMA DE ESPAÃƒÆ’Ã¢â‚¬Â¡AMENTO ENTRE SECÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES
========================================================= */

.abadapp {
	--home-section-gap: 44px;
	--home-heading-content-gap: 18px;
	--home-eyebrow-title-gap: 8px;
}


/* =========================================================
   HEADINGS COMUNS
========================================================= */

.abadapp-home-section-heading {
	margin: var(--home-section-gap) 0 var(--home-heading-content-gap) !important;
}


.abadapp-home-section-heading__eyebrow {
	display: block;

	margin: 0 0 var(--home-eyebrow-title-gap) !important;

	font-size: 10px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: .15em;

	color: #FB8400;
}


.abadapp-home-section-heading h2 {
	margin: 0 !important;

	font-size: 30px !important;
	font-weight: 900 !important;
	line-height: 1.05 !important;
	letter-spacing: -.025em !important;

	color: #FFFFFF !important;
}


/* =========================================================
   PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O
   Mesma distÃƒÆ’Ã‚Â¢ncia eyebrow ÃƒÂ¢Ã¢â‚¬ Ã¢â‚¬â„¢ tÃƒÆ’Ã‚Â­tulo ÃƒÂ¢Ã¢â‚¬ Ã¢â‚¬â„¢ cards
========================================================= */

.abadapp-upcoming {
	margin-top: var(--home-section-gap) !important;
}


.abadapp-upcoming__eyebrow {
	display: block;

	margin-bottom: var(--home-eyebrow-title-gap) !important;
}


.abadapp-upcoming__header {
	margin-bottom: var(--home-heading-content-gap) !important;
}


.abadapp-upcoming__header h2 {
	margin: 0 !important;

	font-size: 30px !important;
	font-weight: 900 !important;
	line-height: 1.05 !important;
	letter-spacing: -.025em !important;
}


/* =========================================================
   PASSAPORTE
========================================================= */

.abadapp-home-section-heading--passport {
	margin-top: var(--home-section-gap) !important;
	margin-bottom: var(--home-heading-content-gap) !important;
}


/*
 * O espaÃƒÆ’Ã‚Â§o agora pertence ao heading,
 * nÃƒÆ’Ã‚Â£o ao card.
 */
.abadapp-home-section-heading--passport
+ .abadapp-passport-card {
	margin-top: 0 !important;
}


/* =========================================================
   INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS
========================================================= */

.abadapp-home-section-heading--useful {
	margin-top: var(--home-section-gap) !important;
	margin-bottom: var(--home-heading-content-gap) !important;
}


/*
 * Tal como no Passaporte:
 * heading controla o espaÃƒÆ’Ã‚Â§o.
 */
.abadapp-home-section-heading--useful
+ .abadapp-program__useful {
	margin-top: 0 !important;
}


.abadapp-program__useful {
	padding-top: 0 !important;
}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp {
		--home-section-gap: 44px;
		--home-heading-content-gap: 18px;
		--home-eyebrow-title-gap: 8px;
	}


	.abadapp-home-section-heading h2,
	.abadapp-upcoming__header h2 {
		font-size: 27px !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â SPLASH SCREEN
========================================================= */

.abadapp-splash {
	position: fixed;
	inset: 0;

	z-index: 9999999;

	display: flex;
	align-items: center;
	justify-content: center;

	overflow: hidden;

	background:
		linear-gradient(
			145deg,
			#01082B 0%,
			#020C3B 42%,
			#06174E 100%
		);

	opacity: 1;
	visibility: visible;

	transition:
		opacity .55s ease,
		visibility .55s ease;

}


/* quando desaparece */
.abadapp-splash.is-hidden {
	opacity: 0;
	visibility: hidden;

	pointer-events: none;
}


/* =========================================================
   GLOWS
========================================================= */

.abadapp-splash__glow {
	position: absolute;

	width: 280px;
	height: 620px;

	border-radius: 50%;

	filter: blur(75px);

	opacity: .48;

	pointer-events: none;
}


.abadapp-splash__glow--orange {
	left: -150px;
	bottom: -180px;

	background:
		rgba(251,132,0,.85);

	transform:
		rotate(-22deg);
}


.abadapp-splash__glow--blue {
	right: -140px;
	top: -160px;

	background:
		rgba(30,105,255,.80);

	transform:
		rotate(18deg);
}


/* =========================================================
   CONTENT
========================================================= */

.abadapp-splash__content {
	position: relative;
	z-index: 2;

	display: flex;
	flex-direction: column;
	align-items: center;

	transform:
		translateY(-22px);

	animation:
		abadappSplashEnter
		.65s
		cubic-bezier(.2,.8,.2,1)
		both;
}


.abadapp-splash__logo {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 118px;
	height: 118px;

	margin-bottom: 24px;

	border-radius: 50%;

	background: #FFFFFF;

	box-shadow:
		0 22px 60px rgba(0,0,0,.28);
}


.abadapp-splash__logo img {
	display: block;

	width: 88px;
	height: 88px;

	object-fit: contain;
}


.abadapp-splash__brand {
	display: flex;
	align-items: baseline;

	font-size: 48px;
	font-weight: 900;
	line-height: 1;

	letter-spacing: -.045em;

	color: #FFFFFF;
}


.abadapp-splash__brand strong {
	font: inherit;

	color: #FB8400;
}


.abadapp-splash__subtitle {
	margin-top: 16px;

	font-size: 13px;
	font-weight: 900;
	line-height: 1;

	letter-spacing: .20em;

	color: #FB8400;
}


/* =========================================================
   LOADER
========================================================= */

.abadapp-splash__loader {
	position: absolute;

	left: 50%;
	bottom: 52px;

	z-index: 2;

	display: flex;

	gap: 10px;

	transform:
		translateX(-50%);
}


.abadapp-splash__loader span {
	width: 8px;
	height: 8px;

	border-radius: 50%;

	background:
		rgba(255,255,255,.30);

	animation:
		abadappSplashDot
		1s ease-in-out
		infinite;
}


.abadapp-splash__loader span:nth-child(2) {
	animation-delay: .15s;
}


.abadapp-splash__loader span:nth-child(3) {
	animation-delay: .30s;
}


/* =========================================================
   ANIMATIONS
========================================================= */

@keyframes abadappSplashEnter {

	from {
		opacity: 0;

		transform:
			translateY(-10px)
			scale(.96);
	}

	to {
		opacity: 1;

		transform:
			translateY(-22px)
			scale(1);
	}

}


@keyframes abadappSplashDot {

	0%,
	100% {
		transform: scale(.82);

		background:
			rgba(255,255,255,.28);
	}

	50% {
		transform: scale(1.18);

		background:
			#FB8400;
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	.abadapp-splash__logo {
		width: 104px;
		height: 104px;

		margin-bottom: 22px;
	}


	.abadapp-splash__logo img {
		width: 77px;
		height: 77px;
	}


	.abadapp-splash__brand {
		font-size: 43px;
	}


	.abadapp-splash__subtitle {
		font-size: 11px;
	}


	.abadapp-splash__loader {
		bottom: 42px;
	}

}


/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â HERO IMAGE FINAL AJUSTADA
========================================================= */

.abadapp-hero {
	background-image:
		linear-gradient(
			90deg,
			#020C3B 0%,
			rgba(2,12,59,.995) 28%,
			rgba(2,12,59,.93) 44%,
			rgba(2,12,59,.48) 64%,
			rgba(2,12,59,.05) 100%
		),
		linear-gradient(
			0deg,
			rgba(2,12,59,.94) 0%,
			rgba(2,12,59,.05) 52%,
			rgba(2,12,59,.06) 100%
		),
		url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/heroe-image-1-1.png") !important;

	background-size:
		100% 100%,
		100% 100%,
		auto 100% !important;

	background-position:
		center,
		center,
		88% center !important;

	background-repeat:
		no-repeat,
		no-repeat,
		no-repeat !important;
}


/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â SPLASH FIX TABLET + DESKTOP
   Protege o logo dos estilos globais do tema / Elementor
========================================================= */

@media (min-width: 601px) {

	.abadapp-splash .abadapp-splash__logo {
		display: flex !important;
		align-items: center !important;
		justify-content: center !important;

		width: 118px !important;
		height: 118px !important;

		min-width: 118px !important;
		min-height: 118px !important;

		max-width: 118px !important;
		max-height: 118px !important;

		flex: 0 0 118px !important;

		margin: 0 0 24px !important;
		padding: 0 !important;

		overflow: hidden !important;

		border-radius: 50% !important;
		background: #FFFFFF !important;
	}


	.abadapp-splash .abadapp-splash__logo > img {
		display: block !important;

		width: 88px !important;
		height: 88px !important;

		min-width: 88px !important;
		min-height: 88px !important;

		max-width: 88px !important;
		max-height: 88px !important;

		margin: 0 !important;
		padding: 0 !important;

		object-fit: contain !important;

		position: static !important;
		transform: none !important;
	}


	.abadapp-splash__content {
		width: auto !important;
		max-width: none !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â SPLASH LOGO SAFE FIX
========================================================= */

#abadappSplash .abadapp-splash__logo {
	display: block !important;

	width: 118px !important;
	height: 118px !important;
	min-width: 118px !important;
	min-height: 118px !important;
	max-width: 118px !important;
	max-height: 118px !important;

	flex: 0 0 118px !important;

	margin: 0 0 24px !important;

	border-radius: 50% !important;

	background-color: #FFFFFF !important;
	background-image:
		url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/no-background.png") !important;

	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 88px 88px !important;

	overflow: hidden !important;

	box-shadow:
		0 22px 60px rgba(0,0,0,.28) !important;
}


@media (max-width: 600px) {

	#abadappSplash .abadapp-splash__logo {
		width: 104px !important;
		height: 104px !important;
		min-width: 104px !important;
		min-height: 104px !important;
		max-width: 104px !important;
		max-height: 104px !important;

		flex-basis: 104px !important;

		background-size: 77px 77px !important;

		margin-bottom: 22px !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â TABLET + DESKTOP: REMOVE SPLASH
========================================================= */

@media (min-width: 601px) {

	#abadappSplash,
	.abadapp-splash,
	.abadapp-splash__content,
	.abadapp-splash__logo,
	.abadapp-splash__brand,
	.abadapp-splash__subtitle,
	.abadapp-splash__loader,
	.abadapp-splash__glow {
		display: none !important;
		visibility: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â HOME RESPONSIVE
   TABLET + DESKTOP
   MOBILE <= 600px FICA INTOCADO
========================================================= */


/* =========================================================
   BASE ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â TABLET + DESKTOP
========================================================= */

@media (min-width: 601px) {

	.abadapp {
		width: 100% !important;
		max-width: 1180px !important;

		margin-left: auto !important;
		margin-right: auto !important;

		padding-bottom: 140px !important;

		box-sizing: border-box !important;
	}


	/* =====================================================
	   HERO ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â estrutura
	===================================================== */

	.abadapp-hero {
		height: auto !important;
		min-height: 0 !important;

		background-image:
			linear-gradient(
				90deg,
				#020C3B 0%,
				rgba(2,12,59,.99) 26%,
				rgba(2,12,59,.90) 45%,
				rgba(2,12,59,.38) 66%,
				rgba(2,12,59,.03) 100%
			),
			linear-gradient(
				0deg,
				rgba(2,12,59,.93) 0%,
				rgba(2,12,59,.04) 54%,
				rgba(2,12,59,.04) 100%
			),
			url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/heroe-image-1-1.png")
			!important;

		background-repeat:
			no-repeat,
			no-repeat,
			no-repeat !important;

		background-size:
			100% 100%,
			100% 100%,
			cover !important;

		background-position:
			center,
			center,
			78% center !important;
	}


	.abadapp-hero__content {
		display: block !important;

		width: 100% !important;
		min-height: 0 !important;
	}


	/*
	 * A antiga imagem interna do Hero continua desligada.
	 * Estamos a usar a imagem como background.
	 */
	.abadapp-hero__art {
		display: none !important;

		width: 0 !important;
		height: 0 !important;
		min-height: 0 !important;
	}


	.abadapp-hero__copy {
		width: 100% !important;
		max-width: 100% !important;
	}


	/* =====================================================
	   COUNTDOWN ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â sempre horizontal
	===================================================== */

	.abadapp-hero-countdown {
		display: grid !important;

		grid-template-columns:
			minmax(0,1fr)
			auto
			minmax(0,1fr)
			auto
			minmax(0,1fr)
			auto
			minmax(0,1fr)
			!important;

		align-items: center !important;

		box-sizing: border-box !important;

		overflow: hidden !important;
	}


	.abadapp-hero-countdown__item {
		display: block !important;

		min-width: 0 !important;

		text-align: center !important;
	}


	.abadapp-hero-countdown__number {
		display: block !important;

		line-height: 1 !important;

		white-space: nowrap !important;
	}


	.abadapp-hero-countdown__label {
		display: block !important;

		white-space: nowrap !important;
	}


	.abadapp-hero-countdown__separator {
		display: block !important;

		padding: 0 !important;

		line-height: 1 !important;
	}


	/* =====================================================
	   ACONTECE EM BREVE
	   Em tablet/desktop deixa de ser carousel mobile
	===================================================== */

	.abadapp-upcoming__list {
		display: grid !important;

		grid-template-columns:
			repeat(3, minmax(0, 1fr))
			!important;

		gap: 16px !important;

		overflow: visible !important;

		scroll-snap-type: none !important;

		padding-bottom: 0 !important;
	}


	.abadapp-upcoming__item {
		flex: none !important;

		width: auto !important;
		min-width: 0 !important;

		scroll-snap-align: none !important;
	}


	/* =====================================================
	   INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS
	===================================================== */

	.abadapp-program__useful-grid {
		display: grid !important;

		grid-template-columns:
			repeat(3, minmax(0, 1fr))
			!important;
	}


	/* =====================================================
	   ESPAÃƒÆ’Ã¢â‚¬Â¡AMENTOS
	===================================================== */

	.abadapp {
		--home-section-gap: 48px;
		--home-heading-content-gap: 18px;
		--home-eyebrow-title-gap: 8px;
	}


	.abadapp-upcoming,
	.abadapp-home-section-heading {
		margin-top:
			var(--home-section-gap) !important;
	}


	/* =====================================================
	   TÃƒÆ’Ã‚ÂTULOS
	===================================================== */

	.abadapp-upcoming__header h2,
	.abadapp-home-section-heading h2 {
		font-size: 30px !important;

		line-height: 1.05 !important;
	}


	/* =====================================================
	   PASSAPORTE
	===================================================== */

	.abadapp-home-section-heading--passport
	+ .abadapp-passport-card {
		margin-top: 0 !important;
	}


	.abadapp-home-section-heading--useful
	+ .abadapp-program__useful {
		margin-top: 0 !important;
	}

}


/* =========================================================
   TABLET
   601px ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â 1024px
========================================================= */

@media (min-width: 601px) and (max-width: 1024px) {

	.abadapp {
		padding:
			22px 20px
			140px !important;
	}


	/* HERO */

	.abadapp-hero {
		padding:
			28px 30px
			32px !important;

		border-radius:
			26px !important;

		background-position:
			center,
			center,
			72% center !important;
	}


	.abadapp-hero__top {
		margin-bottom:
			38px !important;
	}


	.abadapp-hero__copy h1 {
		width:
			62% !important;

		max-width:
			440px !important;

		font-size:
			clamp(40px, 5.8vw, 48px)
			!important;

		line-height:
			.96 !important;
	}


	.abadapp-hero__copy > p {
		width:
			58% !important;

		max-width:
			410px !important;

		margin-top:
			18px !important;

		font-size:
			13px !important;

		line-height:
			1.6 !important;
	}


	/* COUNTDOWN */

	.abadapp-hero-countdown {
		width:
			100% !important;

		max-width:
			100% !important;

		min-height:
			100px !important;

		margin:
			38px 0
			14px !important;

		padding:
			42px 18px
			16px !important;

		border-radius:
			18px !important;
	}


	.abadapp-hero-countdown__number {
		font-size:
			30px !important;
	}


	.abadapp-hero-countdown__separator {
		font-size:
			27px !important;
	}


	.abadapp-hero-countdown__label {
		font-size:
			8px !important;
	}


	/* DATA + LOCAL */

	.abadapp-event-meta {
		width:
			100% !important;

		max-width:
			100% !important;

		grid-template-columns:
			.9fr 1.1fr !important;
	}


	.abadapp-event-meta > div {
		min-height:
			48px !important;

		padding:
			10px 14px !important;
	}


	.abadapp-event-meta span {
		font-size:
			10px !important;
	}


	/* PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O */

	.abadapp-upcoming__item {
		min-height:
			208px !important;

		padding:
			110px 15px
			16px !important;
	}


	.abadapp-upcoming__item::before {
		height:
			104px !important;
	}


	.abadapp-upcoming__content strong {
		font-size:
			13px !important;
	}


	/* PASSAPORTE */

	.abadapp-passport-card {
		padding:
			28px 26px !important;
	}


	.abadapp-passport-card__content {
		max-width:
			74% !important;
	}


	/* INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES */

	.abadapp-program__useful-grid {
		gap:
			12px !important;
	}


	.abadapp-program__useful-grid button {
		min-height:
			80px !important;

		padding:
			14px 15px !important;
	}

}


/* =========================================================
   DESKTOP
   >= 1025px
========================================================= */

@media (min-width: 1025px) {

	.abadapp {
		padding:
			32px 32px
			150px !important;

		--home-section-gap: 54px;
	}


	/* HERO */

	.abadapp-hero {
		padding:
			36px 42px
			40px !important;

		border-radius:
			30px !important;

		background-position:
			center,
			center,
			78% center !important;
	}


	.abadapp-hero__top {
		margin-bottom:
			46px !important;
	}


	.abadapp-hero__copy h1 {
		width:
			52% !important;

		max-width:
			560px !important;

		font-size:
			clamp(52px, 5vw, 64px)
			!important;

		line-height:
			.94 !important;

		letter-spacing:
			-.045em !important;
	}


	.abadapp-hero__copy > p {
		width:
			48% !important;

		max-width:
			500px !important;

		margin-top:
			22px !important;

		font-size:
			14px !important;

		line-height:
			1.65 !important;
	}


	/* COUNTDOWN */

	.abadapp-hero-countdown {
		width:
			60% !important;

		max-width:
			650px !important;

		min-height:
			104px !important;

		margin:
			40px 0
			14px !important;

		padding:
			43px 20px
			17px !important;

		border-radius:
			18px !important;
	}


	.abadapp-hero-countdown__number {
		font-size:
			32px !important;
	}


	.abadapp-hero-countdown__separator {
		font-size:
			29px !important;
	}


	.abadapp-hero-countdown__label {
		font-size:
			8px !important;
	}


	/* DATA + LOCAL */

	.abadapp-event-meta {
		width:
			60% !important;

		max-width:
			650px !important;

		grid-template-columns:
			.88fr 1.12fr !important;
	}


	.abadapp-event-meta span {
		font-size:
			10px !important;
	}


	/* TÃƒÆ’Ã‚ÂTULOS */

	.abadapp-upcoming__header h2,
	.abadapp-home-section-heading h2 {
		font-size:
			32px !important;
	}


	/* PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O */

	.abadapp-upcoming__list {
		gap:
			18px !important;
	}


	.abadapp-upcoming__item {
		min-height:
			238px !important;

		padding:
			136px 18px
			18px !important;

		border-radius:
			20px !important;
	}


	.abadapp-upcoming__item::before {
		height:
			130px !important;
	}


	.abadapp-upcoming__item::after {
		top:
			74px !important;

		height:
			64px !important;
	}


	.abadapp-upcoming__content strong {
		font-size:
			15px !important;
	}


	.abadapp-upcoming__content span {
		font-size:
			10px !important;
	}


	/* PASSAPORTE */

	.abadapp-passport-card {
		padding:
			32px 30px !important;

		border-radius:
			24px !important;
	}


	.abadapp-passport-card__content {
		max-width:
			700px !important;
	}


	/* INFORMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã¢â‚¬Â¢ES ÃƒÆ’Ã…Â¡TEIS */

	.abadapp-program__useful-grid {
		gap:
			14px !important;
	}


	.abadapp-program__useful-grid button {
		min-height:
			86px !important;

		padding:
			15px 18px !important;

		border-radius:
			17px !important;
	}


	.abadapp-program__useful-grid strong {
		font-size:
			12px !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â RESPONSIVE FORCE
   HERO + COUNTDOWN
   MOBILE <= 600px INTOCADO
========================================================= */


/* =========================================================
   TABLET + DESKTOP
========================================================= */

@media screen and (min-width: 601px) {

	body .abadapp .abadapp-hero {
		height: auto !important;
		min-height: 0 !important;

		background-image:
			linear-gradient(
				90deg,
				#020C3B 0%,
				rgba(2,12,59,.98) 26%,
				rgba(2,12,59,.88) 44%,
				rgba(2,12,59,.36) 66%,
				rgba(2,12,59,.03) 100%
			),
			linear-gradient(
				0deg,
				rgba(2,12,59,.92) 0%,
				rgba(2,12,59,.04) 55%,
				rgba(2,12,59,.03) 100%
			),
			url("https://abadacapoeiraluxemburgo.com/wp-content/uploads/2026/08/heroe-image-1-1.png")
			!important;

		background-repeat:
			no-repeat,
			no-repeat,
			no-repeat !important;

		background-size:
			100% 100%,
			100% 100%,
			cover !important;
	}


	body .abadapp .abadapp-hero__content {
		display: block !important;
		width: 100% !important;
		min-height: 0 !important;
	}


	body .abadapp .abadapp-hero__art {
		display: none !important;
		width: 0 !important;
		height: 0 !important;
		min-height: 0 !important;
	}


	body .abadapp .abadapp-hero__copy {
		width: 100% !important;
		max-width: 100% !important;
	}


	/* COUNTDOWN ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â forÃƒÆ’Ã‚Â§a estrutura horizontal */

	body .abadapp .abadapp-hero-countdown {
		display: grid !important;

		grid-template-columns:
			minmax(0, 1fr)
			auto
			minmax(0, 1fr)
			auto
			minmax(0, 1fr)
			auto
			minmax(0, 1fr)
			!important;

		align-items: center !important;

		width: 100% !important;

		box-sizing: border-box !important;
	}


	body .abadapp .abadapp-hero-countdown__item {
		display: block !important;
		min-width: 0 !important;
		text-align: center !important;
	}


	body .abadapp .abadapp-hero-countdown__number,
	body .abadapp .abadapp-hero-countdown__label {
		display: block !important;
		white-space: nowrap !important;
	}


	body .abadapp .abadapp-hero-countdown__separator {
		display: block !important;
		padding: 0 !important;
		line-height: 1 !important;
	}

}


/* =========================================================
   TABLET ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â 601 / 1024
========================================================= */

@media screen and (min-width: 601px) and (max-width: 1024px) {

	body .abadapp .abadapp-hero {
		padding: 28px 30px 32px !important;

		background-position:
			center,
			center,
			72% center !important;
	}


	body .abadapp .abadapp-hero__copy h1 {
		width: 62% !important;
		max-width: 440px !important;

		font-size: 46px !important;
		line-height: .96 !important;
	}


	body .abadapp .abadapp-hero__copy > p {
		width: 57% !important;
		max-width: 390px !important;

		font-size: 13px !important;
		line-height: 1.6 !important;
	}


	body .abadapp .abadapp-hero-countdown {
		max-width: none !important;

		margin: 38px 0 14px !important;
		padding: 42px 18px 16px !important;
	}


	body .abadapp .abadapp-event-meta {
		width: 100% !important;
		max-width: none !important;
	}

}


/* =========================================================
   DESKTOP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â >= 1025
========================================================= */

@media screen and (min-width: 1025px) {

	body .abadapp .abadapp-hero {
		padding: 36px 42px 40px !important;

		background-position:
			center,
			center,
			76% center !important;
	}


	body .abadapp .abadapp-hero__copy h1 {
		width: 53% !important;
		max-width: 570px !important;

		font-size: 62px !important;
		line-height: .94 !important;
	}


	body .abadapp .abadapp-hero__copy > p {
		width: 48% !important;
		max-width: 490px !important;

		font-size: 14px !important;
		line-height: 1.65 !important;
	}


	body .abadapp .abadapp-hero-countdown {
		width: 60% !important;
		max-width: 650px !important;

		margin: 40px 0 14px !important;
		padding: 43px 20px 17px !important;
	}


	body .abadapp .abadapp-event-meta {
		width: 60% !important;
		max-width: 650px !important;
	}

}

/* =========================================================
   SPLASH ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â DEVELOPER CREDIT
========================================================= */

.abadapp-splash__credit {
	position: absolute;
	left: 50%;
	bottom: 92px;
	z-index: 3;

	transform: translateX(-50%);

	width: calc(100% - 40px);

	text-align: center;

	font-size: 9px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: .08em;
	text-transform: uppercase;

	color: rgba(255,255,255,.42);
}

.abadapp-splash__credit strong {
	display: block;

	margin-top: 3px;

	font-size: 10px;
	font-weight: 850;
	letter-spacing: .10em;

	color: rgba(255,255,255,.78);
}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â BACKGROUND CONTÃƒÆ’Ã‚ÂNUO TABLET + DESKTOP
   FUNDO NO ROOT PARA NÃƒÆ’Ã†â€™O DEPENDER DA ALTURA DO CONTEÃƒÆ’Ã…Â¡DO
========================================================= */

@media (min-width: 601px) {

	html {
		min-height: 100% !important;

		background:
			radial-gradient(
				circle at 50% 12%,
				rgba(18,62,150,.16),
				transparent 28%
			),
			linear-gradient(
				180deg,
				#020C3B 0%,
				#031148 38%,
				#020C3B 78%,
				#01082B 100%
			) !important;

		background-repeat: no-repeat !important;
		background-attachment: fixed !important;
		background-size: cover !important;
	}


	body {
		min-height: 100vh !important;
		min-height: 100dvh !important;

		background: transparent !important;
	}


	/* Wrapper geral */

	.abadapp {
		background: transparent !important;
	}


	/* Programa */

	.abadapp-program {
		background: transparent !important;
	}


	/* InformaÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Âµes ÃƒÆ’Ã‚Âºteis */

	.abadapp-info-screen {
		background: transparent !important;
	}


	/* Turismo */

	#abadappTourism {
		background: transparent !important;
	}


	/* Resultados */

	#abadappResults {
		background: transparent !important;
	}


	/* Perfil */

	#abadappProfile {
		background: transparent !important;
	}


	/* Passaporte */

	#abadappPassport {
		background: transparent !important;
	}

}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â ELEMENTOR WRAPPERS TRANSPARENTES
   TABLET + DESKTOP
========================================================= */

@media (min-width: 601px) {

	.e-con:has(.abadapp),
	.elementor-section:has(.abadapp),
	.elementor-column:has(.abadapp),
	.elementor-widget-shortcode:has(.abadapp),
	.elementor-widget-shortcode:has(.abadapp)
		> .elementor-widget-container,
	.elementor-shortcode:has(.abadapp) {

		background: transparent !important;
		background-color: transparent !important;
		background-image: none !important;

		border: 0 !important;
		box-shadow: none !important;
	}

}


		font-size: 13px !important;
		line-height: 1.45 !important;
		letter-spacing: .06em !important;
	}

}

/* =========================================================
   REGISTRATION SUMMARY ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â V2
========================================================= */

.abada-jogos-summary {
	position: relative;

	display: grid;
	grid-template-columns: minmax(0, 1fr) 310px;
	align-items: stretch;
	gap: 36px;

	padding: 28px 30px;

	border: 1px solid rgba(2, 12, 59, 0.14);
	border-radius: 24px;

	background: #ffffff;

	box-shadow:
		0 18px 45px rgba(2, 12, 59, 0.06);

	overflow: hidden;
}


/* Orange accent */

.abada-jogos-summary::before {
	content: "";

	position: absolute;
	top: 0;
	left: 0;

	width: 5px;
	height: 100%;

	background: #ff8200;
}


/* =========================================================
   LEFT SIDE
========================================================= */

.abada-jogos-summary__package {
	margin: 5px 0 8px;

	color: #020c3b;

	font-size: clamp(24px, 2vw, 31px);
	font-weight: 900;
	line-height: 1.05;
}


#abadaSummaryParticipation,
#abadaSummaryCompetition {
	display: inline-flex;
	align-items: center;

	width: auto;

	margin-top: 8px;
	margin-right: 7px;

	padding: 7px 12px;

	border-radius: 999px;

	background: #f7f2e8;

	color: #020c3b;

	font-size: 12px;
	font-weight: 700;
	line-height: 1;
}


/* Remove "Categoria:" appearance from plain text feel */

.abada-jogos-summary > div:first-child {
	align-self: center;
}


/* =========================================================
   RIGHT / PRICE AREA
========================================================= */

.abada-jogos-summary__price {
	display: flex;
	flex-direction: column;
	justify-content: center;

	min-width: 0;

	padding: 22px 24px;

	border-radius: 18px;

	background: #f7f2e8;
}


/* Pricing label */

#abadaSummaryPricingLabel {
	margin-bottom: 16px;

	color: #6f7486;

	font-size: 11px;
	font-weight: 700;
	line-height: 1.35;

	text-transform: none;
}


/* Normal amounts */

#abadaSummaryBasePrice,
#abadaSummaryExtrasPrice {
	color: #020c3b;

	font-size: 24px;
	font-weight: 900;
	line-height: 1;
}


/* Total */

#abadaSummaryTotalPrice {
	color: #ff8200;

	font-size: 38px;
	font-weight: 900;
	line-height: 1;
}


/* Give rows more breathing room */

.abada-jogos-summary__price > * {
	margin-bottom: 9px;
}

.abada-jogos-summary__price > *:last-child {
	margin-bottom: 0;
}


.abada-jogos-summary__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 12px;
	max-width: 560px;
}

.abada-jogos-summary__meta span {
	display: inline-flex;
	align-items: center;

	min-height: 24px;
	padding: 4px 9px;

	border-radius: 999px;

	background: #f7f2e8;

	font-size: 10px;
	font-weight: 800;
	line-height: 1.15;

	color: var(--abada-navy);
}

@media (max-width: 767px) {

	.abada-jogos-summary__meta {
		align-items: flex-start;
	}

	.abada-jogos-summary__meta span {
		max-width: 100%;
		white-space: normal;
	}

}



/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

	.abada-jogos-summary {
		grid-template-columns: 1fr;
		gap: 20px;

		padding: 24px 20px 20px;
	}


	.abada-jogos-summary__price {
		padding: 20px;

		border-radius: 16px;
	}


	.abada-jogos-summary__package {
		font-size: 25px;
	}


	#abadaSummaryTotalPrice {
		font-size: 34px;
	}

}

/* =========================================================
   STAFF CHECK-IN ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â CLEAN PAGE
========================================================= */

body.abada-staff-checkin-page header,
body.abada-staff-checkin-page footer,
body.abada-staff-checkin-page .elementor-location-header,
body.abada-staff-checkin-page .elementor-location-footer {
	display: none !important;
}


body.abada-staff-checkin-page {
	margin-top: 0 !important;
}


body.abada-staff-checkin-page #wpadminbar {
	display: none !important;
}


html:has(body.abada-staff-checkin-page) {
	margin-top: 0 !important;
}
/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â PROGRAMAÃƒÆ’Ã¢â‚¬Â¡ÃƒÆ’Ã†â€™O / UPCOMING POLISH
   2026-09-16
   Corrige tabs, horÃƒÆ’Ã‚Â¡rios, cards mobile e espaÃƒÆ’Ã‚Â§o da bottom nav.
========================================================= */

/* MantÃƒÆ’Ã‚Â©m conteÃƒÆ’Ã‚Âºdo sempre acima da navegaÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o fixa. */
.abadapp-program {
	padding-bottom: 170px !important;
}

/* Corpo do card nunca deve forÃƒÆ’Ã‚Â§ar overflow horizontal. */
.abadapp-program-event__body {
	min-width: 0;
}

/* HorÃƒÆ’Ã‚Â¡rios e ÃƒÂ¢Ã¢â€šÂ¬Ã…â€œA confirmarÃƒÂ¢Ã¢â€šÂ¬Ã‚Â devem permanecer numa ÃƒÆ’Ã‚Âºnica linha. */
.abadapp-program-event__time {
	white-space: nowrap !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	font-variant-numeric: tabular-nums;
}

/* Meta pode quebrar entre itens, mas nÃƒÆ’Ã‚Â£o dentro de cada item. */
.abadapp-program-event__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 12px;
}

.abadapp-program-event__meta > span {
	white-space: nowrap;
}

/* =========================================================
   TABLET + DESKTOP
========================================================= */

@media (min-width: 601px) {

	/* SÃƒÆ’Ã‚Â£o 6 perÃƒÆ’Ã‚Â­odos/dias: 20ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Å“24 + 25 + 26 + 27 + 28 + 29. */
	.abadapp-program__days {
		grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
	}

	/* Mais largura para horÃƒÆ’Ã‚Â¡rios completos 10:00ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Å“11:00. */
	.abadapp-program-event {
		grid-template-columns: 112px minmax(0, 1fr) !important;
		gap: 20px !important;
		align-items: start;
	}

	.abadapp-program-event__time {
		font-size: 14px !important;
		line-height: 1.25 !important;
	}
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

	/* Mais espaÃƒÆ’Ã‚Â§o real para a bottom nav + safe area de iPhone. */
	.abadapp-program {
		padding:
			26px 16px
			calc(175px + env(safe-area-inset-bottom))
			!important;
	}

	/* Dias em faixa horizontal: evita o 29 ficar sozinho numa 2.Ãƒâ€šÃ‚Âª linha. */
	.abadapp-program__days {
		display: flex !important;
		grid-template-columns: none !important;
		gap: 8px !important;

		overflow-x: auto !important;
		overflow-y: hidden !important;

		padding:
			2px 2px
			8px !important;

		scroll-snap-type: x proximity;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.abadapp-program__days::-webkit-scrollbar {
		display: none;
	}

	.abadapp-program__day {
		flex: 0 0 70px !important;
		width: 70px !important;
		min-width: 70px !important;
		min-height: 66px !important;

		padding: 9px 5px !important;
		border-radius: 14px !important;

		scroll-snap-align: start;
	}

	.abadapp-program__day:first-child {
		flex-basis: 78px !important;
		width: 78px !important;
		min-width: 78px !important;
	}

	.abadapp-program__day span {
		font-size: 8px !important;
		line-height: 1.1 !important;
	}

	.abadapp-program__day strong {
		font-size: 18px !important;
		line-height: 1 !important;
		white-space: nowrap;
	}

	.abadapp-program__section-title {
		margin-top: 28px !important;
	}

	.abadapp-program__timeline {
		gap: 10px !important;
		margin-top: 16px !important;
	}

	/* Corrige o overlap que vÃƒÆ’Ã‚Â­amos entre hora, tipo e tÃƒÆ’Ã‚Â­tulo. */
	.abadapp-program-event {
		grid-template-columns: 84px minmax(0, 1fr) !important;
		gap: 12px !important;
		align-items: start !important;

		padding: 16px !important;
		border-radius: 16px !important;
	}

	.abadapp-program-event__time {
		padding-top: 1px !important;

		font-size: 12.5px !important;
		font-weight: 900 !important;
		line-height: 1.2 !important;
		letter-spacing: -0.015em;
	}

	.abadapp-program-event__type {
		display: block;
		margin: 1px 0 4px !important;

		font-size: 8px !important;
		line-height: 1.2 !important;
	}

	.abadapp-program-event h4 {
		margin: 0 0 6px !important;

		font-size: 16px !important;
		line-height: 1.2 !important;

		overflow-wrap: anywhere;
	}

	.abadapp-program-event p {
		font-size: 11.5px !important;
		line-height: 1.5 !important;
	}

	.abadapp-program-event__meta {
		margin-top: 10px !important;
		gap: 5px 9px !important;

		font-size: 10px !important;
	}

	/* Quando existe sÃƒÆ’Ã‚Â³ um prÃƒÆ’Ã‚Â³ximo evento, usa a largura disponÃƒÆ’Ã‚Â­vel. */
	.abadapp-upcoming__item:only-child {
		flex: 0 0 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* =========================================================
   MOBILE PEQUENO
========================================================= */

@media (max-width: 400px) {

	.abadapp-program-event {
		grid-template-columns: 80px minmax(0, 1fr) !important;
		gap: 10px !important;
		padding: 14px !important;
	}

	.abadapp-program-event__time {
		font-size: 12px !important;
	}

	.abadapp-program-event h4 {
		font-size: 15px !important;
	}
}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â BACKGROUND CONTÃƒÆ’Ã‚ÂNUO FINAL ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â SEM FAIXAS
   16/09/2026

   HÃƒÆ’Ã‚Â¡ regras antigas no ficheiro que aplicam um gradient ao
   <html> e tornam a app/ecrÃƒÆ’Ã‚Â£s transparentes em desktop.
   Quando um ecrÃƒÆ’Ã‚Â£ tem pouco conteÃƒÆ’Ã‚Âºdo, esse fundo aparece por
   baixo e cria faixas. Este bloco unifica tudo num navy sÃƒÆ’Ã‚Â³lido.
========================================================= */

/* Fundo atrÃƒÆ’Ã‚Â¡s da AbadAPP */
html:has(.abadapp),
body:has(.abadapp) {
	background: #020C3B !important;
	background-color: #020C3B !important;
	background-image: none !important;
}

/* Wrapper principal */
.abadapp {
	background: #020C3B !important;
	background-color: #020C3B !important;
	background-image: none !important;
}

/* Todos os ecrÃƒÆ’Ã‚Â£s principais usam exatamente o mesmo fundo */
.abadapp-program,
.abadapp-info-screen,
#abadappTourism,
#abadappResults,
#abadappProfile,
#abadappPassport,
#abadappHistoryQuiz {
	background: #020C3B !important;
	background-color: #020C3B !important;
	background-image: none !important;
}

/* Elementor pode continuar transparente, mas agora o que estÃƒÆ’Ã‚Â¡
   por trÃƒÆ’Ã‚Â¡s ÃƒÆ’Ã‚Â© sempre o mesmo navy. */
.e-con:has(.abadapp),
.elementor-section:has(.abadapp),
.elementor-column:has(.abadapp),
.elementor-widget-shortcode:has(.abadapp),
.elementor-widget-shortcode:has(.abadapp) > .elementor-widget-container,
.elementor-shortcode:has(.abadapp) {
	background-color: #020C3B !important;
	background-image: none !important;
}

/* Garante continuidade atÃƒÆ’Ã‚Â© ao fundo do viewport em ecrÃƒÆ’Ã‚Â£s curtos */
.abadapp,
#abadappResults,
#abadappProfile,
.abadapp-program,
.abadapp-info-screen {
	min-height: 100dvh;
}


/* =========================================================
   BILHETE ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â INSTALAR ABADAPP / PWA
========================================================= */

.abada-ticket-next__install-button {
	display: block;
	width: 100%;
	margin: 10px 0 0;
	padding: 13px 16px;
	box-sizing: border-box;

	border: 1px solid rgba(251,132,0,.55);
	border-radius: 14px;

	background: #FFFFFF;
	color: #020C3B;

	font: inherit;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.2;

	cursor: pointer;
	transition:
		transform .15s ease,
		border-color .15s ease,
		background .15s ease;
}

.abada-ticket-next__install-button:hover {
	border-color: #FB8400;
	background: #FFF9F2;
}

.abada-ticket-next__install-button:active {
	transform: translateY(1px);
}

.abada-ticket-next__install-button:disabled {
	opacity: .7;
	cursor: default;
	transform: none;
}

.abada-ticket-next__install-help {
	margin-top: 10px;
	padding: 12px 14px;

	border-radius: 12px;

	background: #F7F2E8;
	color: #5F6678;

	font-size: 12px;
	line-height: 1.55;
	text-align: left;
}

.abada-ticket-next__install-help strong,
.abada-ticket-next__install-help b {
	color: #020C3B;
}

.abada-ticket-next__install-help[hidden] {
	display: none !important;
}

/* =========================================================
   ABADAPP ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â DESCOBRIR LUXEMBURGO ÃƒÂ¢Ã¢â€šÂ¬Ã¢â‚¬Â POLISH 16/09/2026
========================================================= */

/*
 * O sÃƒÆ’Ã‚Â­mbolo decorativo antigo era um caractere Unicode literal
 * e podia aparecer corrompido como "ÃƒÆ’Ã‚Â¢Ãƒâ€¦Ã¢â‚¬Å“Ãƒâ€šÃ‚Â¦". Usamos escape CSS.
 */
.abadapp-tourism-intro::after {
	content: "\2726" !important;
}

/*
 * DÃƒÆ’Ã‚Â¡ mais presenÃƒÆ’Ã‚Â§a ÃƒÆ’ s fotografias dos cards.
 */
.abadapp-tourism-card__image {
	height: 175px !important;
}

@media (max-width: 520px) {
	.abadapp-tourism-card__image {
		height: 165px !important;
	}
}

/* =========================================================
   INTERNATIONAL PHONE INPUT
   ========================================================= */

.abada-jogos-field .iti {
	width: 100%;
	display: block;
}

.abada-jogos-field .iti input[type="tel"] {
	width: 100% !important;
	height: 54px !important;
	min-height: 54px !important;

	padding-left: 105px !important;
	padding-right: 16px !important;

	border: 1px solid rgba(2, 12, 59, 0.14) !important;
	border-radius: 14px !important;

	background: #ffffff !important;

	font-family: inherit;
	font-size: 14px;
	font-weight: 500;

	color: #020C3B;
}

.abada-jogos-field .iti__flag-container {
	left: 0;
}

.abada-jogos-field .iti__selected-country {
	padding: 0 12px;
}

.abada-jogos-field .iti__selected-dial-code {
	margin-left: 7px;

	font-size: 14px;
	font-weight: 700;

	color: #020C3B;
}

.abada-jogos-field .iti__arrow {
	margin-left: 7px;
}

.abada-jogos-field .iti__country-list {
	z-index: 999999;
}

@media (max-width: 600px) {

	.abada-jogos-field .iti input[type="tel"] {
		height: 56px !important;
		min-height: 56px !important;

		padding-left: 105px !important;

		font-size: 16px;
	}

}

/* =========================================================
   EXTRA SHIRTS Ã¢â‚¬â€ INSTRUCTION
   ========================================================= */

.abada-jogos-extra-shirts__instruction {
	margin: 12px 0 20px;
	padding: 12px 15px;

	border-left: 4px solid #FB8400;
	border-radius: 8px;

	background: rgba(251, 132, 0, 0.08);

	font-size: 12px;
	font-weight: 600;
	line-height: 1.5;

	color: #020C3B;
}

.abada-jogos-extra-shirts__instruction strong {
	font-weight: 900;
}

.abada-jogos-extra-shirt-picker__add {
	background: #198754 !important;
	color: #ffffff !important;
	border-color: #198754 !important;

	box-shadow:
		0 8px 20px rgba(25, 135, 84, 0.18);
}

.abada-jogos-extra-shirt-picker__add:hover {
	background: #157347 !important;
	border-color: #157347 !important;

	transform: translateY(-1px);
}

/* =========================================================
   FINAL STEP Ã¢â‚¬â€ FORCE CHECK-IN + PAYMENT BELOW SUMMARY
========================================================= */

.abada-jogos-form > .abada-jogos-summary {
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	align-self: stretch !important;
	position: relative !important;
}


.abada-jogos-form > .abada-jogos-checkin-payment {
	width: 100% !important;
	max-width: none !important;

	margin:
		0
		0
		0
		0 !important;

	align-self: stretch !important;

	position: static !important;
	float: none !important;
	clear: both !important;

	transform: none !important;
	box-sizing: border-box !important;
}


.abada-jogos-form > .abada-jogos-form__actions {
	width: 100% !important;
	max-width: none !important;

	margin:
		0
		0
		0
		0 !important;

	padding-top: 6px !important;

	align-self: stretch !important;

	position: static !important;
	float: none !important;
	clear: both !important;

	transform: none !important;

	box-sizing: border-box !important;
}


.abada-jogos-form > .abada-jogos-form__actions
.abada-jogos-form__submit {
	width: 100% !important;
	max-width: none !important;
}


/*
 * MantÃƒÂ©m o painel bege apenas
 * dentro do card do resumo.
 */

.abada-jogos-summary__price {
	height: auto !important;
	min-height: 0 !important;
}

/* =========================================================
   REGISTRATION Ã¢â‚¬â€ EXTRAS VISUAL REFINEMENT
   ========================================================= */


/* ---------------------------------------------------------
   TÃƒÂTULOS PRINCIPAIS DOS EXTRAS
--------------------------------------------------------- */

#abadaSectionExtras .abada-jogos-extras-title {
	margin: 0 0 10px !important;

	font-size: 20px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;

	color: #020C3B !important;
}


/* ---------------------------------------------------------
   REFEIÃƒâ€¡Ãƒâ€¢ES Ã¢â‚¬â€ 2 COLUNAS EM DESKTOP
--------------------------------------------------------- */

#abadaSectionExtras .abada-jogos-meals-grid {
	display: grid;

	grid-template-columns:
		repeat(
			2,
			minmax(0, 1fr)
		);

	align-items: start;

	gap: 24px;

	margin-top: 18px;
	margin-bottom: 38px;
}


#abadaSectionExtras
.abada-jogos-meals-grid
.abada-jogos-extras-group {
	min-width: 0;
	margin-bottom: 0;
}


#abadaSectionExtras
.abada-jogos-meals-grid
.abada-jogos-extras-group > h3 {
	margin: 0 0 12px;

	font-size: 16px;
	font-weight: 800;
	line-height: 1.3;

	color: #020C3B;
}


/* ---------------------------------------------------------
   LINHAS DE REFEIÃƒâ€¡Ãƒâ€¢ES
--------------------------------------------------------- */

#abadaSectionExtras .abada-jogos-extra-row {
	width: 100%;

	box-sizing: border-box;
}


#abadaSectionExtras
.abada-jogos-meals-grid
.abada-jogos-extra-row {
	margin-bottom: 10px;

	padding: 14px 15px;
}


/* ---------------------------------------------------------
   TOGGLES ATIVOS Ã¢â‚¬â€ VERDE
--------------------------------------------------------- */

#abadaSectionExtras
.abada-jogos-extra-row
input:checked
+
.abada-jogos-toggle {
	background: #1F8F4E !important;
}


/* Pequeno feedback visual da linha selecionada */

#abadaSectionExtras
.abada-jogos-extra-row:has(input:checked) {
	border-color: rgba(31, 143, 78, 0.30);

	background: rgba(31, 143, 78, 0.045);
}


/* ---------------------------------------------------------
   MERCHANDISING
   mesmo peso visual dos restantes tÃƒÂ­tulos principais
--------------------------------------------------------- */

#abadaSectionExtras
.abada-jogos-extras-group
>
.abada-jogos-extras-title {
	margin-bottom: 8px !important;

	font-size: 20px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
}


/* ---------------------------------------------------------
   MOBILE / TABLET
--------------------------------------------------------- */

@media (max-width: 900px) {

	#abadaSectionExtras .abada-jogos-meals-grid {
		grid-template-columns: 1fr;

		gap: 26px;
	}

}


/* ---------------------------------------------------------
   MOBILE PEQUENO
--------------------------------------------------------- */

@media (max-width: 600px) {

	#abadaSectionExtras
	.abada-jogos-meals-grid
	.abada-jogos-extra-row {
		padding: 14px;
	}

}

/* =========================================================
   STEP 04 Ã¢â‚¬â€ EXTRAS
   BLOCOS COM FUNDO SUAVE
========================================================= */

/* AlmoÃƒÂ§os + Jantares */
#abadaSectionExtras .abada-jogos-meals-grid .abada-jogos-extras-group {
	background: #f7f6f1;
	border: 1px solid #e7e2d6;
	border-radius: 18px;
	padding: 18px;
	box-sizing: border-box;
}

/* Merchandising + Camisetas extra */
#abadaSectionExtras .abada-jogos-extras-soft-card {
	background: #f7f6f1;
	border: 1px solid #e7e2d6;
	border-radius: 18px;
	padding: 20px 18px;
	box-sizing: border-box;
	margin-top: 18px;
}

/* TÃƒÂ­tulos dentro dos cards */
#abadaSectionExtras .abada-jogos-meals-grid .abada-jogos-extras-group > h3,
#abadaSectionExtras .abada-jogos-extras-soft-card .abada-jogos-extras-title {
	margin-top: 0 !important;
	margin-bottom: 8px !important;
}

/* Texto descritivo */
#abadaSectionExtras .abada-jogos-extras-soft-card p,
#abadaSectionExtras .abada-jogos-extras-soft-card .abada-jogos-extra-shirts__description {
	margin-top: 0;
}

/* Para o bloco das camisetas respirar melhor */
#abadaSectionExtras .abada-jogos-extras-soft-card--shirts {
	padding-top: 22px;
	padding-bottom: 22px;
}

/* Pequeno espaÃƒÂ§amento interno entre os rows */
#abadaSectionExtras .abada-jogos-meals-grid .abada-jogos-extra-row:last-child,
#abadaSectionExtras .abada-jogos-extras-soft-card .abada-jogos-extra-row:last-child {
	margin-bottom: 0;
}

/* =========================================================
   STEP 04 Ã¢â‚¬â€ ESPAÃƒâ€¡AMENTO FINAL ENTRE OS 3 BLOCOS
========================================================= */

/*
 * Os trÃƒÂªs cards passam a ter um espaÃƒÂ§amento ÃƒÂºnico
 * e consistente entre eles.
 */

#abadaSectionExtras .abada-jogos-extras-soft-card {
	margin-top: 0 !important;
	margin-bottom: 14px !important;
}


/*
 * RefeiÃƒÂ§ÃƒÂµes:
 * remove o espaÃƒÂ§o antigo que existia depois da grid.
 */

#abadaSectionExtras
.abada-jogos-extras-soft-card--meals
.abada-jogos-meals-grid {
	margin-bottom: 0 !important;
}


/*
 * Merchandising:
 * elimina o margin-bottom antigo dos extras-group.
 */

#abadaSectionExtras
.abada-jogos-extras-group.abada-jogos-extras-soft-card {
	margin-top: 0 !important;
	margin-bottom: 14px !important;
}


/*
 * Camisetas:
 * elimina o enorme margin-top/padding-top
 * da estrutura antiga, porque agora jÃƒÂ¡ ÃƒÂ© um card.
 */

#abadaSectionExtras
.abada-jogos-extra-shirts.abada-jogos-extras-soft-card {
	margin-top: 0 !important;
	margin-bottom: 0 !important;

	padding-top: 20px !important;

	border-top: 1px solid #e7e2d6 !important;
}

/* =========================================================
   MOBILE Ã¢â‚¬â€ APROVEITAR MAIS A LARGURA DO ECRÃƒÆ’
========================================================= */

@media (max-width: 767px) {

	.abada-jogos-registration {
		padding-left: 8px !important;
		padding-right: 8px !important;
	}

	.abada-jogos-form__section {
		width: calc(100% + 16px) !important;

		margin-left: -8px !important;
		margin-right: -8px !important;
	}

}


@media (max-width: 420px) {

	.abada-jogos-registration {
		padding-left: 6px !important;
		padding-right: 6px !important;
	}

	.abada-jogos-form__section {
		width: calc(100% + 20px) !important;

		margin-left: -10px !important;
		margin-right: -10px !important;
	}

}


/* =========================================================
   ABADAPP — PASSAPORTE NA HOME
   Cartão horizontal em desktop, tablet e mobile.
   Apenas a classe --home-new.
========================================================= */

.abadapp .abadapp-passport-card--home-new {
    position: relative;
    display: block !important;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    overflow: hidden;

    padding: 24px 20px !important;
    border: 1px solid rgba(196, 147, 44, .20);
    border-radius: 22px !important;
    background: #fffaf0 !important;
    box-shadow: 0 12px 30px rgba(0, 0, 0, .10);
    color: #0b1940;
}

/* Imagem à direita, sem corte brusco à esquerda. */
.abadapp .abadapp-passport-card--home-new::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    bottom: 0;

    display: block;
    width: 56%;
    height: auto;

    background-image: url("../images/abadapp-passaporte-arte-home.png");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;

    -webkit-mask-image: linear-gradient(
        to right,
        transparent 0%,
        rgba(0, 0, 0, .35) 25%,
        #000 55%
    );
    mask-image: linear-gradient(
        to right,
        transparent 0%,
        rgba(0, 0, 0, .35) 25%,
        #000 55%
    );

    pointer-events: none;
}

/* Texto e botão sempre acima da ilustração. */
.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__content {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    max-width: 68% !important;
    min-width: 0;
    padding: 0 !important;
    box-sizing: border-box;
}

.abadapp .abadapp-passport-card--home-new h2 {
    display: block !important;
    margin: 0 0 10px !important;
    color: #0b1940 !important;
    font-size: clamp(19px, 2.8vw, 30px) !important;
    font-weight: 900;
    line-height: 1.12;
    letter-spacing: -.025em;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__content > p {
    margin: 0 0 17px !important;
    color: #46516a !important;
    font-size: 12px !important;
    line-height: 1.45;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__progress {
    margin: 0 0 17px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__progress-top {
    display: block;
    margin: 0 0 8px !important;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__progress-top strong {
    color: #98690c !important;
    font-size: 14px !important;
    font-weight: 900;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__seals {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    width: 100%;
    max-width: 250px;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__seals::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 8px;
    left: 8px;
    height: 2px;
    background: #d9d4c8;
    transform: translateY(-50%);
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__seal {
    position: relative;
    z-index: 1;
    display: flex;
    flex: 0 0 23px;
    align-items: center;
    justify-content: center;
    width: 23px;
    height: 23px;
    padding: 0;
    border: 2px solid #cbc7bc;
    border-radius: 50%;
    background: #fffaf0;
    color: #cbc7bc;
    font-size: 12px;
    line-height: 1;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__seal.is-earned {
    border-color: #c58a0a;
    background: #df9300;
    color: #fff;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    max-width: 250px;
    min-height: 41px;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #c58a0a !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 850;
    line-height: 1.2;
    cursor: pointer;
}

.abadapp .abadapp-passport-card--home-new
.abadapp-passport-card__button span {
    color: inherit !important;
}

/* Mobile: mantém imagem à direita e cartão compacto. */
@media (max-width: 600px) {

    .abadapp .abadapp-passport-card--home-new {
        padding: 17px 13px !important;
        border-radius: 17px !important;
    }

    .abadapp .abadapp-passport-card--home-new::before {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 57%;
        height: auto;
        background-position: 49% center;
    }

    .abadapp .abadapp-passport-card--home-new
    .abadapp-passport-card__content {
        width: 100%;
        max-width: 76% !important;
        padding: 0 !important;
    }

    .abadapp .abadapp-passport-card--home-new h2 {
        margin-bottom: 7px !important;
        font-size: 17px !important;
        line-height: 1.15;
    }

    .abadapp .abadapp-passport-card--home-new
    .abadapp-passport-card__content > p {
        margin-bottom: 11px !important;
        font-size: 10px !important;
        line-height: 1.35;
    }

    .abadapp .abadapp-passport-card--home-new
    .abadapp-passport-card__progress {
        margin-bottom: 12px !important;
    }

    .abadapp .abadapp-passport-card--home-new
    .abadapp-passport-card__progress-top {
        margin-bottom: 6px !important;
    }

    .abadapp .abadapp-passport-card--home-new
    .abadapp-passport-card__progress-top strong {
        font-size: 12px !important;
    }

    .abadapp .abadapp-passport-card--home-new
    .abadapp-passport-card__seals {
        max-width: 190px;
    }

    .abadapp .abadapp-passport-card--home-new
    .abadapp-passport-card__seal {
        flex-basis: 20px;
        width: 20px;
        height: 20px;
        font-size: 10px;
    }

    .abadapp .abadapp-passport-card--home-new
    .abadapp-passport-card__button {
        max-width: 190px;
        min-height: 35px;
        padding: 8px 10px !important;
        font-size: 10px !important;
    }
}
.abadapp .abadapp-passport-card--home-new[hidden] {
    display: none !important;
}


/* =========================================================
   ABADAPP — ACONTECE EM BREVE
   Apenas o cartão vazio: "Horários a confirmar".
   Não altera eventos publicados nem o layout geral.
========================================================= */

.abadapp .abadapp-upcoming__item--empty {
    position: relative;
    display: block !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 0;
    min-height: 0 !important;
    box-sizing: border-box;

    margin: 0 !important;
    padding: 155px 15px 17px !important;

    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .13) !important;
    border-radius: 18px !important;
    background: #192848 !important;
}

/* Imagem com transição suave para o fundo do cartão. */
.abadapp .abadapp-upcoming__item--empty::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 0;
    left: 0;
    right: 0;

    display: block !important;
    width: 100%;
    height: 160px !important;

    background-image:
        linear-gradient(
            to bottom,
            rgba(25, 40, 72, 0) 55%,
            #192848 100%
        ),
       url("../images/capoeira_roda_in_orange_and_navy.png") !important;

    background-repeat: no-repeat !important;
    background-size: cover, cover !important;
    background-position: center, center center !important;

    pointer-events: none;
}

/* Desativa a transição antiga apenas neste cartão. */
.abadapp .abadapp-upcoming__item--empty::after {
    content: none !important;
}

/* Etiqueta e textos. */
.abadapp .abadapp-upcoming__item--empty
.abadapp-upcoming__time {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;

    width: auto !important;
    margin: 0 0 10px !important;
    padding: 5px 9px !important;

    border: 0 !important;
    border-radius: 7px;
    background: #fb8400 !important;

    color: #fff !important;
    font-size: 9px !important;
    font-weight: 900;
    letter-spacing: .08em;
    line-height: 1.2;
}

.abadapp .abadapp-upcoming__item--empty
.abadapp-upcoming__content {
    position: relative;
    z-index: 1;
    display: block;
    min-width: 0;
}

.abadapp .abadapp-upcoming__item--empty
.abadapp-upcoming__content strong {
    display: block;
    margin: 0 0 5px !important;

    color: #fff !important;
    font-size: 16px !important;
    font-weight: 900;
    line-height: 1.2 !important;
}

.abadapp .abadapp-upcoming__item--empty
.abadapp-upcoming__content span {
    display: block;
    color: rgba(255, 255, 255, .78) !important;
    font-size: 11px !important;
    line-height: 1.45;
}

/* Mantém o botão original da App: azul-escuro e seta laranja. */
.abadapp .abadapp-upcoming__all {
    background: linear-gradient(
        135deg,
        rgba(255, 255, 255, .075),
        rgba(255, 255, 255, .035)
    ) !important;

    color: #fff !important;
}

.abadapp .abadapp-upcoming__all > span {
    color: #fb8400 !important;
}

/* Mobile: imagem mais baixa para manter o cartão compacto. */
@media (max-width: 600px) {
    .abadapp .abadapp-upcoming__item--empty {
        padding: 125px 13px 15px !important;
    }

    .abadapp .abadapp-upcoming__item--empty::before {
        height: 130px !important;
    }

    .abadapp .abadapp-upcoming__item--empty
    .abadapp-upcoming__content strong {
        font-size: 14px !important;
    }
}

/* ABADAPP — Botão Ver programação na Home */
.abadapp .abadapp-upcoming__all {
    background: #fb8400 !important;
    border-color: #fb8400 !important;
    color: #020c3b !important;
}

.abadapp .abadapp-upcoming__all > span {
    color: #020c3b !important;
}


/* =========================================================
   ABADAPP — CORES DOS CARTÕES DE INFORMAÇÕES ÚTEIS
   Apenas os seis cartões da Home.
   Não altera dimensões, margens ou navegação.
========================================================= */

/* Locais & Transportes — azul */
.abadapp .abadapp-program__useful-grid
button[data-abadapp-info="locations"] {
    background: linear-gradient(135deg, #1d4076, #14284e) !important;
    border-color: rgba(95, 163, 255, .30) !important;
}

/* Descobrir Luxemburgo — verde */
.abadapp .abadapp-program__useful-grid
button[data-abadapp-info="tourism"] {
    background: linear-gradient(135deg, #225c55, #163a43) !important;
    border-color: rgba(89, 207, 171, .30) !important;
}

/* Alojamento — violeta */
.abadapp .abadapp-program__useful-grid
button[data-abadapp-info="accommodation"] {
    background: linear-gradient(135deg, #4a376f, #27234f) !important;
    border-color: rgba(173, 145, 238, .30) !important;
}

/* FAQs — azul-petróleo */
.abadapp .abadapp-program__useful-grid
button[data-abadapp-info="faq"] {
    background: linear-gradient(135deg, #19566c, #153249) !important;
    border-color: rgba(93, 204, 220, .30) !important;
}

/* Contactos — laranja-acastanhado */
.abadapp .abadapp-program__useful-grid
button[data-abadapp-info="contact"] {
    background: linear-gradient(135deg, #80502d, #493047) !important;
    border-color: rgba(255, 176, 96, .30) !important;
}

/* Emergência — vermelho discreto */
.abadapp .abadapp-program__useful-grid
button[data-abadapp-info="emergency"] {
    background: linear-gradient(135deg, #793444, #402746) !important;
    border-color: rgba(255, 126, 142, .30) !important;
}

/* Mantém os textos legíveis em todos os cartões. */
.abadapp .abadapp-program__useful-grid
button[data-abadapp-info] strong {
    color: #ffffff !important;
}

/* =========================================================
   ABADAPP — OCULTAR CARTÕES DA HOME NAS INFORMAÇÕES ÚTEIS
   Apenas quando um ecrã interno de informações está aberto.
========================================================= */

.abadapp:has(> .abadapp-info-screen:not([hidden]))
> .abadapp-community-card,

.abadapp:has(> .abadapp-info-screen:not([hidden]))
> .abadapp-home-section-heading--passport,

.abadapp:has(> .abadapp-info-screen:not([hidden]))
> .abadapp-passport-card--home-new {
    display: none !important;
}
/* =========================================================
   ABADAPP — HOME: ALINHAMENTO E COR DOS CARTÕES
   Desktop, tablet e mobile
========================================================= */

/* Comunidade e Convidados:
   mesmas extremidades laterais do Passaporte */
.abadapp > .abadapp-community-card,
.abadapp > .abadapp-mestres-home {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
}

/* Mesmo azul nos dois cartões */
.abadapp > .abadapp-community-card,
.abadapp > .abadapp-mestres-home {
    background-color: #15234c !important;
}

/* =========================================================
   ABADAPP — CORRIGIR MARGENS DUPLICADAS NOS ECRÃS INTERNOS
   Desktop + mobile | Home intacta
========================================================= */

/* Retira apenas o espaço lateral extra do contentor principal
   quando um ecrã interno está aberto. */
.abadapp:has(> #abadappProgram:not([hidden])),
.abadapp:has(> #abadappPassport:not([hidden])),
.abadapp:has(> #abadappHistoryQuiz:not([hidden])),
.abadapp:has(> #abadappResults:not([hidden])),
.abadapp:has(> #abadappProfile:not([hidden])),
.abadapp:has(> .abadapp-info-screen:not([hidden])) {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* ABADAPP — distância uniforme entre etiqueta e título na Home */
.abadapp .abadapp-home-section-heading {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.abadapp .abadapp-home-section-heading__eyebrow,
.abadapp .abadapp-home-section-heading h2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* HOME — espaço entre a etiqueta PROGRAMAÇÃO e o título */
.abadapp .abadapp-upcoming__eyebrow {
    margin-bottom: 0px !important;
}

.abadapp .abadapp-upcoming__title {
    margin-top: 0 !important;
}
/* Respeitar a visibilidade dos títulos da Home */
.abadapp .abadapp-home-section-heading[hidden] {
    display: none !important;
}


/* =========================================================
   ABADAPP — ABADÁ MUSICAL
========================================================= */

.abadapp-music-screen {
	box-sizing: border-box;
	width: 100%;
}

.abadapp-music-screen[hidden] {
	display: none !important;
}


/* Lista */

.abadapp-music-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	margin-top: 24px;
}


/* Card de cada toque */

.abadapp-music-toque {
	display: flex;
	align-items: center;
	gap: 14px;

	padding: 16px;

	background: #15234c;
	border: 1px solid rgba(255,255,255,.09);
	border-radius: 16px;

	box-sizing: border-box;
}


/* Ícone */

.abadapp-music-toque__icon {
	flex: 0 0 44px;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 44px;
	height: 44px;

	border-radius: 12px;

	background: rgba(255,128,0,.14);
	color: #ff8000;

	font-size: 24px;
	font-weight: 800;
}


/* Conteúdo */

.abadapp-music-toque__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;

	min-width: 0;
}

.abadapp-music-toque__body strong {
	color: #fff;
	font-size: 15px;
	line-height: 1.3;
}


/* Link de cada toque */

.abadapp-music-toque__button {
	display: inline-flex;
	align-items: center;
	gap: 7px;

	color: #ff8000;
	font-size: 12px;
	font-weight: 800;

	text-decoration: none;
}

.abadapp-music-toque__button:hover,
.abadapp-music-toque__button:focus {
	color: #ff9b32;
}


/* Bloco final */

.abadapp-music-footer {
	margin-top: 24px;
	padding: 20px;

	background: #15234c;
	border-radius: 18px;

	box-sizing: border-box;
}

.abadapp-music-footer > span {
	display: block;

	margin-bottom: 6px;

	color: #ff8000;

	font-size: 10px;
	font-weight: 900;
	letter-spacing: .14em;
}

.abadapp-music-footer h3 {
	margin: 0 0 8px;

	color: #fff;

	font-size: 23px;
	line-height: 1.1;
}

.abadapp-music-footer p {
	margin: 0 0 18px;

	color: rgba(255,255,255,.75);

	font-size: 13px;
	line-height: 1.55;
}


/* CTA */

.abadapp-music-full {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;

	min-height: 46px;
	padding: 0 17px;

	border-radius: 13px;

	background: #ff8000;
	color: #fff;

	font-size: 13px;
	font-weight: 900;

	text-decoration: none;
}

.abadapp-music-full:hover,
.abadapp-music-full:focus {
	color: #fff;
}


/* Desktop / tablets maiores */

@media (min-width: 720px) {

	.abadapp-music-grid {
		grid-template-columns:
			repeat(2, minmax(0, 1fr));
	}

}

/* =========================================================
   ABADAPP MUSICAL — BOTÃO PLAY
========================================================= */

.abadapp-music-toque__button {
	appearance: none;
	-webkit-appearance: none;

	border: 0;
	padding: 0;
	margin: 0;

	background: transparent;

	display: inline-flex;
	align-items: center;
	gap: 7px;

	color: #ff8000;

	font: inherit;
	font-size: 12px;
	font-weight: 800;

	cursor: pointer;
	text-decoration: none;
}

.abadapp-music-toque__button:hover,
.abadapp-music-toque__button:focus {
	color: #ff9b32;
}

.abadapp-music-toque__button.is-playing {
	color: #fff;
}

.abadapp-music-toque__play-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;

	width: 14px;

	font-size: 10px;
}

/* =========================================================
   ABADAPP — ABADÁ MUSICAL CARD HOME
========================================================= */

.abadapp-music-home-card {
	position: relative;
	overflow: hidden;

	display: flex;
	align-items: stretch;

	width: 100%;
	min-height: 245px;

	margin: 0 0 42px;

	background:
		linear-gradient(
			90deg,
			#fffaf0 0%,
			#fff8e8 54%,
			#f4d98f 100%
		);

	border-radius: 22px;

	box-sizing: border-box;
}


/* CONTEÚDO */

.abadapp-music-home-card__content {
	position: relative;
	z-index: 2;

	display: flex;
	flex-direction: column;
	align-items: flex-start;

	width: 55%;

	padding: 28px 30px;
	box-sizing: border-box;
}


.abadapp-music-home-card__content h2 {
	margin: 0 0 8px;

	color: #07184f;

	font-size: 31px;
	line-height: 1.05;
	font-weight: 900;
}


.abadapp-music-home-card__content p {
	max-width: 460px;

	margin: 0 0 18px;

	color: #25345e;

	font-size: 14px;
	line-height: 1.5;
}


.abadapp-music-home-card__count {
	display: block;

	margin-bottom: 18px;

	color: #a76d00;

	font-size: 15px;
	font-weight: 900;
}


/* BOTÃO */

.abadapp-music-home-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;

	min-width: 210px;
	min-height: 46px;

	padding: 0 22px;

	border: 0;
	border-radius: 999px;

	background: #d59300;
	color: #fff;

	font: inherit;
	font-size: 14px;
	font-weight: 900;

	cursor: pointer;

	box-shadow: none;
}


.abadapp-music-home-card__button:hover,
.abadapp-music-home-card__button:focus {
	background: #bd8200;
	color: #fff;
}


/* ÁREA VISUAL */

.abadapp-music-home-card__visual {
	position: absolute;

	top: 0;
	right: 0;
	bottom: 0;

	width: 48%;

	overflow: hidden;

	background:
		radial-gradient(
			circle at 70% 50%,
			rgba(186,126,0,.34) 0,
			rgba(186,126,0,.16) 32%,
			transparent 65%
		);
}


/* CÍRCULO DECORATIVO */

.abadapp-music-home-card__visual::before {
	content: "";

	position: absolute;

	width: 320px;
	height: 320px;

	right: -55px;
	top: -35px;

	border: 24px solid rgba(164,108,0,.14);
	border-radius: 50%;
}


/* BERIMBAU ABSTRATO */

.abadapp-music-home-card__berimbau {
	position: absolute;

	right: 85px;
	top: -22px;

	color: rgba(129,78,0,.65);

	font-family: Georgia, serif;
	font-size: 290px;
	line-height: 1;

	transform:
		rotate(-18deg)
		scaleX(.55);

	transform-origin: center;
}


/* NOTAS */

.abadapp-music-home-card__note {
	position: absolute;

	color: rgba(167,109,0,.7);

	font-weight: 900;
}


.abadapp-music-home-card__note--1 {
	right: 110px;
	top: 60px;

	font-size: 48px;

	transform: rotate(8deg);
}


.abadapp-music-home-card__note--2 {
	right: 35px;
	top: 120px;

	font-size: 58px;

	transform: rotate(-8deg);
}


/* MOBILE */

@media (max-width: 700px) {

	.abadapp-music-home-card {
		min-height: 250px;
		margin-bottom: 32px;
	}


	.abadapp-music-home-card__content {
		width: 72%;
		padding: 22px 20px;
	}


	.abadapp-music-home-card__content h2 {
		font-size: 25px;
	}


	.abadapp-music-home-card__content p {
		font-size: 13px;
		line-height: 1.45;
	}


	.abadapp-music-home-card__count {
		font-size: 13px;
	}


	.abadapp-music-home-card__button {
		min-width: 170px;
		min-height: 44px;

		font-size: 13px;
	}


	.abadapp-music-home-card__visual {
		width: 42%;
		opacity: .75;
	}


	.abadapp-music-home-card__berimbau {
		right: 15px;
		top: 5px;

		font-size: 230px;
	}


	.abadapp-music-home-card__note--1 {
		right: 55px;
		top: 55px;

		font-size: 35px;
	}


	.abadapp-music-home-card__note--2 {
		right: 8px;
		top: 110px;

		font-size: 42px;
	}

}


/* =========================================================
   ABADAPP — ABADÁ MUSICAL / HOME
========================================================= */

.abadapp-music-home-only {
	width: 100%;
	box-sizing: border-box;
}


/* Card */

.abadapp-music-home-card {
	position: relative;

	display: flex;
	align-items: stretch;

	width: 100%;
	min-height: 245px;

	margin: 14px 0 44px;

	overflow: hidden;

	background:
		linear-gradient(
			105deg,
			#fff9ec 0%,
			#fff7e6 55%,
			#f7dda0 100%
		);

	border-radius: 22px;

	box-sizing: border-box;
}


/* Conteúdo */

.abadapp-music-home-card__content {
	position: relative;
	z-index: 2;

	width: 57%;
	padding: 30px 32px;

	box-sizing: border-box;
}

.abadapp-music-home-card__content h2 {
	margin: 0 0 10px;

	color: #07164d;

	font-size: 28px;
	line-height: 1.05;
	font-weight: 900;
}

.abadapp-music-home-card__content p {
	max-width: 430px;

	margin: 0 0 20px;

	color: #172653;

	font-size: 14px;
	line-height: 1.5;
}

.abadapp-music-home-card__count {
	display: block;

	margin-bottom: 21px;

	color: #a66a00;

	font-size: 13px;
	font-weight: 900;
}


/* Botão */

.abadapp-music-home-card__button {
	appearance: none;
	-webkit-appearance: none;

	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 12px;

	min-height: 48px;
	padding: 0 25px;

	border: 0;
	border-radius: 999px;

	background: #df9300;
	color: #fff;

	font: inherit;
	font-size: 13px;
	font-weight: 900;

	cursor: pointer;
}

.abadapp-music-home-card__button span {
	font-size: 18px;
	line-height: 1;
}

.abadapp-music-home-card__button:hover {
	background: #c98200;
}


/* Arte direita */

.abadapp-music-home-card__art {
	position: absolute;

	top: 0;
	right: 0;
	bottom: 0;

	width: 45%;

	display: flex;
	align-items: center;
	justify-content: center;

	color: #a86f17;

	background:
		radial-gradient(
			circle at 70% 50%,
			rgba(222,161,44,.20) 0%,
			rgba(222,161,44,.08) 43%,
			transparent 70%
		);

	pointer-events: none;
}

.abadapp-music-home-card__art svg {
	width: 92%;
	height: 92%;
}


/* Mobile */

@media (max-width: 600px) {

	.abadapp-music-home-card {
		min-height: 215px;
		margin-bottom: 34px;
	}

	.abadapp-music-home-card__content {
		width: 68%;
		padding: 22px 18px;
	}

	.abadapp-music-home-card__content h2 {
		font-size: 22px;
	}

	.abadapp-music-home-card__content p {
		font-size: 12px;
		line-height: 1.45;
	}

	.abadapp-music-home-card__count {
		font-size: 12px;
		margin-bottom: 17px;
	}

	.abadapp-music-home-card__button {
		min-height: 42px;
		padding: 0 20px;
		font-size: 12px;
	}

	.abadapp-music-home-card__art {
		width: 43%;
		right: -20px;
	}

	.abadapp-music-home-card__art svg {
		width: 115%;
		height: 115%;
	}

}

<style>

/* =========================================================
   ABADAPP — ALOJAMENTO & TRANSPORTES 2027
========================================================= */

#abadappAccommodation {
	--stay-navy: #020c3b;
	--stay-card: #12275b;
	--stay-card-2: #18336c;
	--stay-orange: #fb8400;
	--stay-cream: #fff7e8;
	--stay-blue: #1687dc;
	--stay-green: #15956f;
	--stay-purple: #8744d7;

	padding-bottom: 120px;
}


#abadappAccommodation .abadapp-info-screen__header {
	margin-bottom: 24px;
}


/* FREE TRANSPORT */

#abadappAccommodation .abadapp-stay-free {
	display: flex;
	align-items: center;
	gap: 20px;

	margin: 0 0 18px;
	padding: 22px 26px;

	border-radius: 22px;

	background:
		linear-gradient(
			135deg,
			#fff8e9 0%,
			#ffe7ae 100%
		);

	color: #020c3b;
}


#abadappAccommodation .abadapp-stay-free__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 68px;
	width: 68px;
	height: 68px;

	border-radius: 20px;

	background: #020c3b;

	font-size: 32px;
}


#abadappAccommodation .abadapp-stay-free span {
	display: block;

	margin-bottom: 3px;

	font-size: 11px;
	font-weight: 900;
	letter-spacing: 1.5px;

	color: #b76a00;
}


#abadappAccommodation .abadapp-stay-free strong {
	display: block;

	font-size: clamp(22px, 3vw, 34px);
	line-height: 1.05;
}


#abadappAccommodation .abadapp-stay-free p {
	margin: 7px 0 0;

	font-size: 14px;
	line-height: 1.45;
}


/* VENUE */

#abadappAccommodation .abadapp-stay-venue {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 16px;

	margin-bottom: 28px;
	padding: 18px 20px;

	border: 1px solid rgba(255,255,255,.14);
	border-radius: 18px;

	background: rgba(255,255,255,.06);
}


#abadappAccommodation .abadapp-stay-venue__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 50px;
	height: 50px;

	border-radius: 14px;

	background: rgba(251,132,0,.13);

	font-size: 25px;
}


#abadappAccommodation .abadapp-stay-venue__content span {
	font-size: 10px;
	font-weight: 900;
	letter-spacing: 1.3px;

	color: var(--stay-orange);
}


#abadappAccommodation .abadapp-stay-venue h3 {
	margin: 3px 0 2px;

	color: #fff;

	font-size: 20px;
	line-height: 1.15;
}


#abadappAccommodation .abadapp-stay-venue p {
	margin: 0;

	color: rgba(255,255,255,.76);

	font-size: 13px;
}


#abadappAccommodation .abadapp-stay-outline-button {
	padding: 11px 16px;

	border: 1px solid var(--stay-orange);
	border-radius: 999px;

	color: var(--stay-orange);

	font-size: 13px;
	font-weight: 800;

	text-decoration: none;
}


/* SECTION HEADINGS */

#abadappAccommodation .abadapp-stay-section-heading {
	display: flex;
	align-items: center;
	gap: 12px;

	margin: 30px 0 15px;
}


#abadappAccommodation .abadapp-stay-section-heading > span {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 44px;
	height: 44px;

	border-radius: 13px;

	background: rgba(251,132,0,.12);

	font-size: 23px;
}


#abadappAccommodation .abadapp-stay-section-heading small {
	display: block;

	margin-bottom: 2px;

	font-size: 9px;
	font-weight: 900;
	letter-spacing: 1.5px;

	color: var(--stay-orange);
}


#abadappAccommodation .abadapp-stay-section-heading h3 {
	margin: 0;

	color: #fff;

	font-size: 25px;
	line-height: 1.1;
}


/* HOTELS */

#abadappAccommodation .abadapp-stay-hotels {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}


#abadappAccommodation .abadapp-stay-hotel {
	min-width: 0;
	overflow: hidden;

	border: 1px solid rgba(85,165,255,.28);
	border-radius: 20px;

	background:
		linear-gradient(
			160deg,
			#10265b 0%,
			#071847 100%
		);
}


#abadappAccommodation .abadapp-stay-hotel__photo {
	height: 190px;

	overflow: hidden;

	background:
		linear-gradient(
			135deg,
			#182e61,
			#0c1741
		);
}


#abadappAccommodation .abadapp-stay-hotel__photo.is-empty::after {
	content: "HOTEL";

	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
	height: 100%;

	font-size: 12px;
	font-weight: 900;
	letter-spacing: 2px;

	color: rgba(255,255,255,.25);
}


#abadappAccommodation .abadapp-stay-hotel__photo img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
}


#abadappAccommodation .abadapp-stay-hotel__body {
	padding: 18px;
}


#abadappAccommodation .abadapp-stay-hotel__area {
	display: block;

	margin-bottom: 4px;

	color: var(--stay-orange);

	font-size: 9px;
	font-weight: 900;
	letter-spacing: 1.4px;
}


#abadappAccommodation .abadapp-stay-hotel h4 {
	margin: 0 0 9px;

	color: #fff;

	font-size: 22px;
	line-height: 1.05;
}


#abadappAccommodation .abadapp-stay-hotel__address {
	min-height: 44px;

	margin: 0 0 14px;

	color: rgba(255,255,255,.77);

	font-size: 13px;
	line-height: 1.45;
}


#abadappAccommodation .abadapp-stay-hotel__transport {
	display: grid;
	gap: 7px;

	margin-bottom: 14px;
}


#abadappAccommodation .abadapp-stay-hotel__transport > div {
	display: flex;
	align-items: center;
	gap: 10px;

	padding: 9px 11px;

	border-radius: 12px;

	background: rgba(255,255,255,.07);
}


#abadappAccommodation .abadapp-stay-hotel__transport > div > span {
	font-size: 18px;
}


#abadappAccommodation .abadapp-stay-hotel__transport p {
	margin: 0;

	color: #fff;

	font-size: 12px;
	line-height: 1.3;
}


#abadappAccommodation .abadapp-stay-hotel__transport strong,
#abadappAccommodation .abadapp-stay-hotel__transport small {
	display: block;
}


#abadappAccommodation .abadapp-stay-hotel__transport small {
	margin-top: 2px;

	color: rgba(255,255,255,.68);

	font-size: 11px;
}


#abadappAccommodation .abadapp-stay-book-button {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;

	width: 100%;

	padding: 12px 14px;

	border: 1px solid var(--stay-orange);
	border-radius: 12px;

	background: rgba(251,132,0,.06);

	color: var(--stay-orange);

	font-size: 14px;
	font-weight: 900;

	text-decoration: none;
}


#abadappAccommodation .abadapp-stay-book-button strong {
	margin-left: auto;
}


/* SCHEDULE */

#abadappAccommodation .abadapp-stay-schedule-note {
	margin: -5px 0 14px;

	color: rgba(255,255,255,.64);

	font-size: 12px;
	line-height: 1.5;
}


#abadappAccommodation .abadapp-stay-schedules {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 9px;
}


#abadappAccommodation .abadapp-stay-route {
	min-width: 0;
	overflow: hidden;

	border: 1px solid rgba(255,255,255,.12);
	border-radius: 15px;

	background: #f7f8fb;

	color: #071336;
}


#abadappAccommodation .abadapp-stay-route__head {
	display: flex;
	align-items: center;
	gap: 8px;

	min-height: 78px;
	padding: 11px;

	background: #147bd1;

	color: #fff;
}


#abadappAccommodation .abadapp-stay-route__head--train {
	background: #ef642e;
}


#abadappAccommodation .abadapp-stay-route__head--purple {
	background: #8245d6;
}


#abadappAccommodation .abadapp-stay-route__head--green {
	background: #168d70;
}


#abadappAccommodation .abadapp-stay-route__head > span {
	font-size: 21px;
}


#abadappAccommodation .abadapp-stay-route__head strong,
#abadappAccommodation .abadapp-stay-route__head small {
	display: block;
}


#abadappAccommodation .abadapp-stay-route__head strong {
	font-size: 14px;
	line-height: 1.15;
}


#abadappAccommodation .abadapp-stay-route__head small {
	margin-top: 3px;

	font-size: 9px;
	line-height: 1.25;
}


#abadappAccommodation .abadapp-stay-route__frequency {
	min-height: 48px;
	padding: 9px 10px;

	border-bottom: 1px solid #dfe3eb;

	font-size: 10px;
	font-weight: 800;
	line-height: 1.3;
}


#abadappAccommodation .abadapp-stay-route__table > div {
	display: grid;
	grid-template-columns: 1fr 1fr;

	border-bottom: 1px solid #e4e7ee;
}


#abadappAccommodation .abadapp-stay-route__table span {
	padding: 6px 5px;

	text-align: center;

	font-size: 11px;
}


#abadappAccommodation .abadapp-stay-route__table .is-head {
	background: #e8edf4;

	font-weight: 800;
}


#abadappAccommodation .abadapp-stay-route__table .is-head span {
	font-size: 9px;
	line-height: 1.15;
}


#abadappAccommodation .abadapp-stay-route__more {
	display: block;

	padding: 7px;

	text-align: center;

	font-size: 9px;

	color: #596071;
}


/* MOBILITEIT */

#abadappAccommodation .abadapp-stay-mobiliteit {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 20px;

	margin-top: 28px;
	padding: 24px;

	border: 1px solid rgba(59,147,255,.3);
	border-radius: 20px;

	background:
		linear-gradient(
			145deg,
			#12336e 0%,
			#081947 100%
		);
}


#abadappAccommodation .abadapp-stay-mobiliteit__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	width: 92px;
	height: 92px;

	border-radius: 22px;

	background: #fff;

	color: #126b9f;

	font-size: 50px;
	font-weight: 1000;
}


#abadappAccommodation .abadapp-stay-mobiliteit__content > span {
	font-size: 9px;
	font-weight: 900;
	letter-spacing: 1.4px;

	color: var(--stay-orange);
}


#abadappAccommodation .abadapp-stay-mobiliteit h3 {
	margin: 3px 0 6px;

	color: #fff;

	font-size: 25px;
}


#abadappAccommodation .abadapp-stay-mobiliteit p {
	margin: 0 0 13px;

	color: rgba(255,255,255,.74);

	font-size: 13px;
	line-height: 1.5;
}


#abadappAccommodation .abadapp-stay-app-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;

	padding: 12px 18px;

	border-radius: 12px;

	background: var(--stay-orange);

	color: #fff;

	font-size: 14px;
	font-weight: 900;

	text-decoration: none;
}


#abadappAccommodation .abadapp-stay-mobiliteit__content > small {
	display: block;

	margin-top: 8px;

	color: rgba(255,255,255,.55);

	font-size: 10px;
}


/* BOTTOM INFO */

#abadappAccommodation .abadapp-stay-bottom-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;

	margin-top: 18px;
}


#abadappAccommodation .abadapp-stay-info-card {
	display: flex;
	gap: 15px;

	padding: 20px;

	border: 1px solid rgba(255,255,255,.13);
	border-radius: 18px;

	background: rgba(255,255,255,.055);
}


#abadappAccommodation .abadapp-stay-info-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 42px;
	width: 42px;
	height: 42px;

	border-radius: 50%;

	background: #147bd1;

	color: #fff;

	font-size: 21px;
	font-weight: 900;
}


#abadappAccommodation .abadapp-stay-info-card h3 {
	margin: 0 0 9px;

	color: #fff;

	font-size: 18px;
}


#abadappAccommodation .abadapp-stay-info-card ul {
	margin: 0;
	padding-left: 18px;
}


#abadappAccommodation .abadapp-stay-info-card li,
#abadappAccommodation .abadapp-stay-info-card p {
	margin: 0 0 8px;

	color: rgba(255,255,255,.74);

	font-size: 12px;
	line-height: 1.5;
}


#abadappAccommodation .abadapp-stay-info-card strong {
	color: #fff;
}


#abadappAccommodation .abadapp-stay-info-card__eyebrow {
	display: block;

	margin-bottom: 3px;

	color: var(--stay-orange);

	font-size: 9px;
	font-weight: 900;
	letter-spacing: 1.2px;
}


#abadappAccommodation .abadapp-stay-disclaimer {
	margin-top: 15px;
	padding: 12px 15px;

	border-radius: 12px;

	background: rgba(255,255,255,.045);

	color: rgba(255,255,255,.55);

	font-size: 10px;
	line-height: 1.5;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

	#abadappAccommodation .abadapp-stay-schedules {
		grid-template-columns:
			repeat(3, minmax(0, 1fr));
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 720px) {

	#abadappAccommodation {
		padding-bottom: 110px;
	}


	#abadappAccommodation .abadapp-stay-free {
		gap: 13px;

		padding: 16px;

		border-radius: 17px;
	}


	#abadappAccommodation .abadapp-stay-free__icon {
		flex-basis: 50px;

		width: 50px;
		height: 50px;

		border-radius: 14px;

		font-size: 23px;
	}


	#abadappAccommodation .abadapp-stay-free strong {
		font-size: 20px;
	}


	#abadappAccommodation .abadapp-stay-free p {
		font-size: 11px;
	}


	#abadappAccommodation .abadapp-stay-venue {
		grid-template-columns: auto 1fr;

		padding: 14px;
	}


	#abadappAccommodation .abadapp-stay-outline-button {
		grid-column: 1 / -1;

		width: 100%;

		text-align: center;
	}


	#abadappAccommodation .abadapp-stay-hotels {
		grid-template-columns: 1fr;
	}


	#abadappAccommodation .abadapp-stay-hotel {
		display: grid;
		grid-template-columns: 118px 1fr;
	}


	#abadappAccommodation .abadapp-stay-hotel__photo {
		height: 100%;
		min-height: 245px;
	}


	#abadappAccommodation .abadapp-stay-hotel__body {
		min-width: 0;

		padding: 14px;
	}


	#abadappAccommodation .abadapp-stay-hotel h4 {
		font-size: 18px;
	}


	#abadappAccommodation .abadapp-stay-hotel__address {
		min-height: 0;

		font-size: 11px;
	}


	#abadappAccommodation .abadapp-stay-hotel__transport > div {
		padding: 7px 8px;
	}


	#abadappAccommodation .abadapp-stay-hotel__transport p {
		font-size: 11px;
	}


	#abadappAccommodation .abadapp-stay-hotel__transport small {
		font-size: 9px;
	}


	#abadappAccommodation .abadapp-stay-book-button {
		padding: 10px;

		font-size: 12px;
	}


	#abadappAccommodation .abadapp-stay-section-heading h3 {
		font-size: 21px;
	}


	/*
	 * No telemóvel os horários ficam em cards
	 * verticais. Nada de tabela esmagada com
	 * cinco colunas lado a lado.
	 */

	#abadappAccommodation .abadapp-stay-schedules {
		grid-template-columns: 1fr;
	}


	#abadappAccommodation .abadapp-stay-route {
		display: grid;
		grid-template-columns: 128px 1fr;
	}


	#abadappAccommodation .abadapp-stay-route__head {
		grid-row: 1 / span 3;

		align-items: flex-start;

		min-height: 100%;
	}


	#abadappAccommodation .abadapp-stay-route__frequency {
		min-height: 0;
	}


	#abadappAccommodation .abadapp-stay-route__more {
		grid-column: 2;
	}


	#abadappAccommodation .abadapp-stay-mobiliteit {
		grid-template-columns: 58px 1fr;

		gap: 13px;

		padding: 17px;
	}


	#abadappAccommodation .abadapp-stay-mobiliteit__icon {
		width: 58px;
		height: 58px;

		border-radius: 15px;

		font-size: 31px;
	}


	#abadappAccommodation .abadapp-stay-mobiliteit h3 {
		font-size: 20px;
	}


	#abadappAccommodation .abadapp-stay-app-button {
		display: flex;

		width: 100%;

		padding: 11px;

		font-size: 12px;
	}


	#abadappAccommodation .abadapp-stay-bottom-grid {
		grid-template-columns: 1fr;
	}

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 430px) {

	#abadappAccommodation .abadapp-stay-hotel {
		display: block;
	}


	#abadappAccommodation .abadapp-stay-hotel__photo {
		height: 180px;
		min-height: 0;
	}


	#abadappAccommodation .abadapp-stay-route {
		display: block;
	}


	#abadappAccommodation .abadapp-stay-route__head {
		min-height: auto;
	}


	#abadappAccommodation .abadapp-stay-route__more {
		display: block;
	}


	#abadappAccommodation .abadapp-stay-info-card {
		padding: 16px;
	}

}

</style>

/* =========================================================
   ABADAPP — ALOJAMENTO & TRANSPORTES (REFINADO)
   Colar em: assets/css/registration.css
========================================================= */

/* ---------- ÍCONES NO ESTILO DA APP ---------- */

.abadapp-accommodation-section .abadapp-section-icon,
.abadapp-accommodation-section .abadapp-hotel-card__icon,
.abadapp-accommodation-section .abadapp-transport-card__icon,
.abadapp-accommodation-section .abadapp-info-card__icon,
.abadapp-accommodation-section .abadapp-mobiliteit-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 12px;
	background: rgba(255, 145, 0, 0.12);
	color: #ff9a1f;
	font-size: 18px;
	flex: 0 0 38px;
}

/* ---------- BOTÕES LARANJA ---------- */

.abadapp-accommodation-section .abadapp-hotel-card__cta,
.abadapp-accommodation-section .abadapp-mobiliteit-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 46px;
	padding: 0 18px;
	border-radius: 14px;
	background: #f59a17;
	color: #ffffff;
	font-weight: 700;
	text-decoration: none;
	border: none;
	box-shadow: none;
	transition: transform 0.18s ease, opacity 0.18s ease;
}

.abadapp-accommodation-section .abadapp-hotel-card__cta:hover,
.abadapp-accommodation-section .abadapp-mobiliteit-card__button:hover {
	opacity: 0.95;
	transform: translateY(-1px);
	color: #ffffff;
}

.abadapp-accommodation-section .abadapp-hotel-card__cta {
	width: 100%;
	margin-top: 14px;
}

.abadapp-accommodation-section .abadapp-mobiliteit-card__button {
	margin-top: 14px;
}

/* =========================================================
   ABADAPP — HOTÉIS + TRANSPORTES — V2
========================================================= */


/* =========================================================
   ÍCONES — ESTILO ABADAPP
========================================================= */

#abadappAccommodation .abadapp-stay-section-heading > span,
#abadappAccommodation .abadapp-stay-info-card__icon {
	position: relative;

	display: flex;
	align-items: center;
	justify-content: center;

	flex: 0 0 42px;

	width: 42px;
	height: 42px;

	border-radius: 12px;

	background: rgba(251,132,0,.12);

	color: #fb8400;

	font-size: 0;
}


/* HOTEL / CAMA */

#abadappAccommodation
.abadapp-stay-section-heading:not(.abadapp-stay-section-heading--transport)
> span::before {

	content: "";

	width: 21px;
	height: 21px;

	background: currentColor;

	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5v14'/%3E%3Cpath d='M3 16h18'/%3E%3Cpath d='M21 19V9a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v7'/%3E%3Cpath d='M6 12h15'/%3E%3C/svg%3E")
		center / contain
		no-repeat;

	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5v14'/%3E%3Cpath d='M3 16h18'/%3E%3Cpath d='M21 19V9a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v7'/%3E%3Cpath d='M6 12h15'/%3E%3C/svg%3E")
		center / contain
		no-repeat;
}


/* AUTOCARRO */

#abadappAccommodation
.abadapp-stay-section-heading--transport
> span::before {

	content: "";

	width: 21px;
	height: 21px;

	background: currentColor;

	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='16' rx='2'/%3E%3Cpath d='M4 11h16'/%3E%3Cpath d='M7 19v2M17 19v2'/%3E%3Ccircle cx='8' cy='15' r='1'/%3E%3Ccircle cx='16' cy='15' r='1'/%3E%3C/svg%3E")
		center / contain
		no-repeat;

	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='16' rx='2'/%3E%3Cpath d='M4 11h16'/%3E%3Cpath d='M7 19v2M17 19v2'/%3E%3Ccircle cx='8' cy='15' r='1'/%3E%3Ccircle cx='16' cy='15' r='1'/%3E%3C/svg%3E")
		center / contain
		no-repeat;
}


/* INFO */

#abadappAccommodation
.abadapp-stay-info-card:first-child
.abadapp-stay-info-card__icon::before {

	content: "i";

	font-size: 20px;
	font-weight: 900;
	font-family: Arial, sans-serif;
}


/* LÍNGUAS */

#abadappAccommodation
.abadapp-stay-info-card:nth-child(2)
.abadapp-stay-info-card__icon::before {

	content: "A";

	font-size: 18px;
	font-weight: 900;
	font-family: Arial, sans-serif;
}


/* =========================================================
   HOTÉIS
========================================================= */

#abadappAccommodation .abadapp-stay-hotels {

	display: grid;

	grid-template-columns:
		repeat(3, minmax(0, 1fr));

	gap: 14px;
}


#abadappAccommodation .abadapp-stay-hotel {

	min-width: 0;

	overflow: hidden;

	border:
		1px solid
		rgba(85,165,255,.28);

	border-radius: 20px;

	background:
		linear-gradient(
			160deg,
			#10265b 0%,
			#071847 100%
		);
}


#abadappAccommodation .abadapp-stay-hotel__photo {

	height: 190px;

	overflow: hidden;

	background:
		linear-gradient(
			135deg,
			#182e61,
			#0c1741
		);
}


#abadappAccommodation
.abadapp-stay-hotel__photo.is-empty::after {

	content: "HOTEL";

	display: flex;

	align-items: center;
	justify-content: center;

	width: 100%;
	height: 100%;

	font-size: 11px;
	font-weight: 900;

	letter-spacing: 2px;

	color:
		rgba(255,255,255,.26);
}


#abadappAccommodation
.abadapp-stay-hotel__photo img {

	display: block;

	width: 100%;
	height: 100%;

	object-fit: cover;
}


#abadappAccommodation
.abadapp-stay-hotel__body {

	padding: 18px;
}


#abadappAccommodation
.abadapp-stay-hotel__area {

	display: block;

	margin-bottom: 4px;

	color: #fb8400;

	font-size: 9px;
	font-weight: 900;

	letter-spacing: 1.4px;
}


#abadappAccommodation
.abadapp-stay-hotel h4 {

	margin: 0 0 9px;

	color: #fff;

	font-size: 22px;

	line-height: 1.05;
}


#abadappAccommodation
.abadapp-stay-hotel__address {

	min-height: 44px;

	margin: 0 0 14px;

	color:
		rgba(255,255,255,.77);

	font-size: 13px;

	line-height: 1.45;
}


/* TRANSPORTES DO HOTEL */

#abadappAccommodation
.abadapp-stay-hotel__transport {

	display: grid;

	gap: 7px;

	margin-bottom: 14px;
}


#abadappAccommodation
.abadapp-stay-hotel__transport > div {

	display: flex;

	align-items: center;

	gap: 10px;

	padding: 9px 11px;

	border-radius: 12px;

	background:
		rgba(255,255,255,.07);
}


#abadappAccommodation
.abadapp-stay-hotel__transport > div > span {

	display: flex;

	align-items: center;
	justify-content: center;

	flex: 0 0 30px;

	width: 30px;
	height: 30px;

	border-radius: 9px;

	background:
		rgba(251,132,0,.12);

	color: #fb8400;

	font-size: 0;
}


/* ícone genérico */

#abadappAccommodation
.abadapp-stay-hotel__transport
> div > span::before {

	content: "→";

	font-size: 16px;

	font-weight: 900;
}


/* primeiro = carro */

#abadappAccommodation
.abadapp-stay-hotel__transport
> div:first-child > span::before {

	content: "◆";

	font-size: 12px;
}


/* restantes = transporte público */

#abadappAccommodation
.abadapp-stay-hotel__transport
> div:not(:first-child)
> span::before {

	content: "▣";

	font-size: 14px;
}


#abadappAccommodation
.abadapp-stay-hotel__transport p {

	margin: 0;

	color: #fff;

	font-size: 12px;

	line-height: 1.3;
}


#abadappAccommodation
.abadapp-stay-hotel__transport strong,
#abadappAccommodation
.abadapp-stay-hotel__transport small {

	display: block;
}


#abadappAccommodation
.abadapp-stay-hotel__transport small {

	margin-top: 2px;

	color:
		rgba(255,255,255,.68);

	font-size: 11px;
}


/* =========================================================
   BOTÃO RESERVAR HOTEL — LARANJA
========================================================= */

#abadappAccommodation
.abadapp-stay-book-button {

	display: flex;

	align-items: center;
	justify-content: center;

	gap: 8px;

	width: 100%;

	min-height: 46px;

	padding: 11px 15px;

	border: 0;

	border-radius: 12px;

	background: #fb8400;

	color: #fff !important;

	font-size: 14px;
	font-weight: 900;

	text-decoration: none !important;

	box-shadow:
		0 6px 16px
		rgba(251,132,0,.18);

	transition:
		transform .18s ease,
		background .18s ease;
}


#abadappAccommodation
.abadapp-stay-book-button:hover {

	background: #ff951f;

	transform:
		translateY(-1px);

	color: #fff !important;
}


#abadappAccommodation
.abadapp-stay-book-button > span {

	font-size: 0;
}


#abadappAccommodation
.abadapp-stay-book-button > span::before {

	content: "";

	display: block;

	width: 18px;
	height: 18px;

	background: currentColor;

	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5v14'/%3E%3Cpath d='M3 16h18'/%3E%3Cpath d='M21 19V9a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v7'/%3E%3Cpath d='M6 12h15'/%3E%3C/svg%3E")
		center / contain
		no-repeat;

	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5v14'/%3E%3Cpath d='M3 16h18'/%3E%3Cpath d='M21 19V9a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v7'/%3E%3Cpath d='M6 12h15'/%3E%3C/svg%3E")
		center / contain
		no-repeat;
}


#abadappAccommodation
.abadapp-stay-book-button strong {

	margin-left: auto;

	color: #fff;
}


/* =========================================================
   TRANSPORTES — UM ÚNICO BLOCO VISUAL
========================================================= */

#abadappAccommodation
.abadapp-stay-section-heading--transport {

	margin:
		28px 0 0;

	padding:
		18px 18px 8px;

	border:
		1px solid
		rgba(255,255,255,.10);

	border-bottom: 0;

	border-radius:
		20px 20px 0 0;

	background: #10255d;
}


#abadappAccommodation
.abadapp-stay-schedule-note {

	margin: 0;

	padding:
		0 18px 14px;

	border-left:
		1px solid
		rgba(255,255,255,.10);

	border-right:
		1px solid
		rgba(255,255,255,.10);

	background: #10255d;

	color:
		rgba(255,255,255,.64);

	font-size: 12px;

	line-height: 1.5;
}


/* =========================================================
   TABELAS DE HORÁRIOS
========================================================= */

#abadappAccommodation
.abadapp-stay-schedules {

	display: grid;

	grid-template-columns:
		repeat(5, minmax(0, 1fr));

	gap: 9px;

	margin: 0;

	padding:
		0 18px 20px;

	border-left:
		1px solid
		rgba(255,255,255,.10);

	border-right:
		1px solid
		rgba(255,255,255,.10);

	background: #10255d;
}


#abadappAccommodation
.abadapp-stay-route {

	min-width: 0;

	overflow: hidden;

	border:
		1px solid
		rgba(255,255,255,.12);

	border-radius: 15px;

	background: #f7f8fb;

	color: #071336;
}


#abadappAccommodation
.abadapp-stay-route__head {

	display: flex;

	align-items: center;

	gap: 8px;

	min-height: 78px;

	padding: 11px;

	background: #147bd1;

	color: #fff;
}


#abadappAccommodation
.abadapp-stay-route__head--train {

	background: #ef642e;
}


#abadappAccommodation
.abadapp-stay-route__head--purple {

	background: #8245d6;
}


#abadappAccommodation
.abadapp-stay-route__head--green {

	background: #168d70;
}


#abadappAccommodation
.abadapp-stay-route__head > span {

	display: flex;

	align-items: center;
	justify-content: center;

	width: 30px;
	height: 30px;

	border-radius: 9px;

	background:
		rgba(255,255,255,.15);

	font-size: 0;
}


#abadappAccommodation
.abadapp-stay-route__head > span::before {

	content: "▣";

	color: #fff;

	font-size: 15px;
}


#abadappAccommodation
.abadapp-stay-route__head strong,
#abadappAccommodation
.abadapp-stay-route__head small {

	display: block;
}


#abadappAccommodation
.abadapp-stay-route__head strong {

	font-size: 14px;

	line-height: 1.15;
}


#abadappAccommodation
.abadapp-stay-route__head small {

	margin-top: 3px;

	font-size: 9px;

	line-height: 1.25;
}


#abadappAccommodation
.abadapp-stay-route__frequency {

	min-height: 48px;

	padding: 9px 10px;

	border-bottom:
		1px solid #dfe3eb;

	font-size: 10px;
	font-weight: 800;

	line-height: 1.3;
}


#abadappAccommodation
.abadapp-stay-route__table > div {

	display: grid;

	grid-template-columns:
		1fr 1fr;

	border-bottom:
		1px solid #e4e7ee;
}


#abadappAccommodation
.abadapp-stay-route__table span {

	padding: 6px 5px;

	text-align: center;

	font-size: 11px;
}


#abadappAccommodation
.abadapp-stay-route__table .is-head {

	background: #e8edf4;

	font-weight: 800;
}


#abadappAccommodation
.abadapp-stay-route__table
.is-head span {

	font-size: 9px;

	line-height: 1.15;
}


#abadappAccommodation
.abadapp-stay-route__more {

	display: block;

	padding: 7px;

	text-align: center;

	font-size: 9px;

	color: #596071;
}


/* =========================================================
   MOBILITEIT — AGORA DENTRO DO MESMO BLOCO
========================================================= */

#abadappAccommodation
.abadapp-stay-mobiliteit {

	display: grid;

	grid-template-columns:
		64px 1fr;

	gap: 16px;

	margin: 0;

	padding:
		18px;

	border-left:
		1px solid
		rgba(255,255,255,.10);

	border-right:
		1px solid
		rgba(255,255,255,.10);

	border-radius: 0;

	background: #10255d;
}


#abadappAccommodation
.abadapp-stay-mobiliteit__icon {

	display: flex;

	align-items: center;
	justify-content: center;

	width: 64px;
	height: 64px;

	border-radius: 16px;

	background: rgba(255,255,255,.08);

	border:
		1px solid
		rgba(255,255,255,.10);

	color: #fb8400;

	font-size: 26px;
	font-weight: 900;
}


#abadappAccommodation
.abadapp-stay-mobiliteit__content {

	padding: 16px;

	border-radius: 16px;

	background:
		rgba(255,255,255,.055);
}


#abadappAccommodation
.abadapp-stay-mobiliteit__content > span {

	font-size: 9px;
	font-weight: 900;

	letter-spacing: 1.4px;

	color: #fb8400;
}


#abadappAccommodation
.abadapp-stay-mobiliteit h3 {

	margin: 3px 0 6px;

	color: #fff;

	font-size: 22px;
}


#abadappAccommodation
.abadapp-stay-mobiliteit p {

	margin: 0 0 13px;

	color:
		rgba(255,255,255,.74);

	font-size: 13px;

	line-height: 1.5;
}


/* BOTÃO MOBILITEIT LARANJA */

#abadappAccommodation
.abadapp-stay-app-button {

	display: inline-flex;

	align-items: center;
	justify-content: center;

	gap: 8px;

	min-height: 44px;

	padding:
		11px 18px;

	border-radius: 12px;

	background: #fb8400;

	color: #fff !important;

	font-size: 13px;
	font-weight: 900;

	text-decoration: none !important;

	box-shadow:
		0 6px 16px
		rgba(251,132,0,.16);
}


#abadappAccommodation
.abadapp-stay-app-button:hover {

	background: #ff951f;

	color: #fff !important;
}


#abadappAccommodation
.abadapp-stay-mobiliteit__content > small {

	display: block;

	margin-top: 8px;

	color:
		rgba(255,255,255,.55);

	font-size: 10px;
}


/* =========================================================
   INFORMAÇÕES + LÍNGUAS — DENTRO DO TRANSPORTE
========================================================= */

#abadappAccommodation
.abadapp-stay-bottom-grid {

	display: grid;

	grid-template-columns:
		1fr 1fr;

	gap: 12px;

	margin: 0;

	padding:
		0 18px 18px;

	border-left:
		1px solid
		rgba(255,255,255,.10);

	border-right:
		1px solid
		rgba(255,255,255,.10);

	background: #10255d;
}


#abadappAccommodation
.abadapp-stay-info-card {

	display: flex;

	gap: 14px;

	padding: 18px;

	border:
		1px solid
		rgba(255,255,255,.10);

	border-radius: 16px;

	background:
		rgba(255,255,255,.055);
}


#abadappAccommodation
.abadapp-stay-info-card h3 {

	margin: 0 0 8px;

	color: #fff;

	font-size: 17px;
}


#abadappAccommodation
.abadapp-stay-info-card ul {

	margin: 0;

	padding-left: 17px;
}


#abadappAccommodation
.abadapp-stay-info-card li,
#abadappAccommodation
.abadapp-stay-info-card p {

	margin: 0 0 7px;

	color:
		rgba(255,255,255,.76);

	font-size: 12px;

	line-height: 1.5;
}


#abadappAccommodation
.abadapp-stay-info-card strong {

	color: #fff;
}


#abadappAccommodation
.abadapp-stay-info-card__eyebrow {

	display: block;

	margin-bottom: 3px;

	color: #fb8400;

	font-size: 9px;
	font-weight: 900;

	letter-spacing: 1.2px;
}


/* NOTA FINAL — FECHA O BLOCO */

#abadappAccommodation
.abadapp-stay-disclaimer {

	margin: 0;

	padding:
		12px 18px 15px;

	border:
		1px solid
		rgba(255,255,255,.10);

	border-top: 0;

	border-radius:
		0 0 20px 20px;

	background: #10255d;

	color:
		rgba(255,255,255,.53);

	font-size: 10px;

	line-height: 1.5;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

	#abadappAccommodation
	.abadapp-stay-schedules {

		grid-template-columns:
			repeat(3, minmax(0, 1fr));
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 720px) {


	/* HOTÉIS */

	#abadappAccommodation
	.abadapp-stay-hotels {

		grid-template-columns: 1fr;
	}


	#abadappAccommodation
	.abadapp-stay-hotel {

		display: grid;

		grid-template-columns:
			118px 1fr;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__photo {

		height: 100%;

		min-height: 245px;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__body {

		min-width: 0;

		padding: 14px;
	}


	#abadappAccommodation
	.abadapp-stay-hotel h4 {

		font-size: 18px;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__address {

		min-height: 0;

		font-size: 11px;
	}


	#abadappAccommodation
	.abadapp-stay-book-button {

		min-height: 42px;

		padding: 9px 11px;

		font-size: 12px;
	}


	/* TRANSPORTES */

	#abadappAccommodation
	.abadapp-stay-section-heading--transport {

		padding:
			15px 14px 8px;
	}


	#abadappAccommodation
	.abadapp-stay-schedule-note {

		padding:
			0 14px 13px;
	}


	#abadappAccommodation
	.abadapp-stay-schedules {

		grid-template-columns: 1fr;

		padding:
			0 14px 16px;
	}


	#abadappAccommodation
	.abadapp-stay-route {

		display: grid;

		grid-template-columns:
			125px 1fr;
	}


	#abadappAccommodation
	.abadapp-stay-route__head {

		grid-row:
			1 / span 3;

		align-items:
			flex-start;

		min-height: 100%;
	}


	#abadappAccommodation
	.abadapp-stay-route__frequency {

		min-height: 0;
	}


	#abadappAccommodation
	.abadapp-stay-route__more {

		grid-column: 2;
	}


	/* MOBILITEIT */

	#abadappAccommodation
	.abadapp-stay-mobiliteit {

		grid-template-columns: 1fr;

		padding:
			0 14px 16px;
	}


	#abadappAccommodation
	.abadapp-stay-mobiliteit__icon {

		display: none;
	}


	#abadappAccommodation
	.abadapp-stay-mobiliteit__content {

		padding: 15px;
	}


	#abadappAccommodation
	.abadapp-stay-app-button {

		display: flex;

		width: 100%;

		font-size: 12px;
	}


	/* INFO */

	#abadappAccommodation
	.abadapp-stay-bottom-grid {

		grid-template-columns: 1fr;

		padding:
			0 14px 14px;
	}


	#abadappAccommodation
	.abadapp-stay-disclaimer {

		padding:
			10px 14px 14px;
	}

}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 430px) {

	#abadappAccommodation
	.abadapp-stay-hotel {

		display: block;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__photo {

		height: 180px;

		min-height: 0;
	}


	#abadappAccommodation
	.abadapp-stay-route {

		display: block;
	}


	#abadappAccommodation
	.abadapp-stay-route__head {

		min-height: auto;
	}


	#abadappAccommodation
	.abadapp-stay-route__more {

		display: block;
	}


	#abadappAccommodation
	.abadapp-stay-info-card {

		padding: 15px;
	}

}

/* =========================================================
   ABADAPP — ALOJAMENTO / AJUSTES FINAIS DE LAYOUT
   ========================================================= */


/* ---------------------------------------------------------
   1. HOTÉIS — BOTÕES SEMPRE ALINHADOS NO FUNDO
--------------------------------------------------------- */

#abadappAccommodation .abadapp-stay-hotels {
	align-items: stretch;
}


#abadappAccommodation .abadapp-stay-hotel {
	display: flex;
	flex-direction: column;
	height: 100%;
}


#abadappAccommodation .abadapp-stay-hotel__photo {
	flex: 0 0 auto;
}


#abadappAccommodation .abadapp-stay-hotel__body {
	display: flex;
	flex-direction: column;
	flex: 1;
}


#abadappAccommodation .abadapp-stay-hotel__transport {
	margin-bottom: 16px;
}


/*
 * Faz o botão descer sempre até ao fundo,
 * mesmo quando outro hotel tem mais transportes.
 */
#abadappAccommodation .abadapp-stay-book-button {
	margin-top: auto;

	background: #fb8400 !important;
	border-color: #fb8400 !important;

	color: #ffffff !important;

	box-shadow:
		0 8px 22px
		rgba(251, 132, 0, .18);
}


#abadappAccommodation .abadapp-stay-book-button:hover {
	background: #ff941f !important;
	border-color: #ff941f !important;

	color: #ffffff !important;
}


/* ---------------------------------------------------------
   2. SECÇÃO HORÁRIOS — MAIS ESPAÇO NO TOPO
--------------------------------------------------------- */

#abadappAccommodation
.abadapp-stay-section-heading--transport {

	margin-top: 42px;
	margin-bottom: 10px;
}


#abadappAccommodation
.abadapp-stay-schedule-note {

	margin-top: 0;
	margin-bottom: 22px;
}


/*
 * Mais espaço entre o topo do bloco
 * e as tabelas propriamente ditas.
 */
#abadappAccommodation .abadapp-stay-schedules {

	margin-top: 8px;
}


/* ---------------------------------------------------------
   3. MOBILITEIT — INTEGRADO COM A SECÇÃO TRANSPORTES
--------------------------------------------------------- */

#abadappAccommodation .abadapp-stay-mobiliteit {

	margin-top: 24px;
	margin-left: 16px;
	margin-right: 16px;

	padding: 22px;

	border-radius: 18px;

	background:
		linear-gradient(
			145deg,
			#17346f 0%,
			#11275b 100%
		);
}


/*
 * Botão Mobiliteit laranja
 */
#abadappAccommodation .abadapp-stay-app-button {

	background: #fb8400 !important;

	color: #ffffff !important;

	box-shadow:
		0 7px 18px
		rgba(251, 132, 0, .18);
}


#abadappAccommodation .abadapp-stay-app-button:hover {

	background: #ff941f !important;

	color: #ffffff !important;
}


/* ---------------------------------------------------------
   4. INFO ÚTIL + LÍNGUAS — PADDING / RESPIRAÇÃO
--------------------------------------------------------- */

#abadappAccommodation .abadapp-stay-bottom-grid {

	margin-top: 16px;

	padding-left: 16px;
	padding-right: 16px;

	gap: 14px;
}


#abadappAccommodation .abadapp-stay-info-card {

	padding: 20px;

	border-radius: 16px;
}


/*
 * Pequeno espaço interno nos textos
 */
#abadappAccommodation
.abadapp-stay-info-card > div:last-child {

	min-width: 0;
}


#abadappAccommodation .abadapp-stay-info-card h3 {

	margin-bottom: 10px;
}


/* ---------------------------------------------------------
   5. NOTA FINAL — NÃO COLADA ÀS BORDAS
--------------------------------------------------------- */

#abadappAccommodation .abadapp-stay-disclaimer {

	margin:
		14px
		16px
		0;

	padding:
		11px
		14px;

	border-radius: 10px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

	#abadappAccommodation
	.abadapp-stay-section-heading--transport {

		margin-top: 34px;
	}

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 720px) {

	/*
	 * No mobile cada hotel passa a ter altura natural,
	 * por isso o botão continua no fim do conteúdo.
	 */

	#abadappAccommodation .abadapp-stay-hotel {

		height: auto;
	}


	#abadappAccommodation .abadapp-stay-book-button {

		margin-top: 14px;
	}


	#abadappAccommodation
	.abadapp-stay-section-heading--transport {

		margin-top: 34px;
		margin-bottom: 8px;
	}


	#abadappAccommodation
	.abadapp-stay-schedule-note {

		margin-bottom: 18px;
	}


	#abadappAccommodation .abadapp-stay-mobiliteit {

		margin-left: 0;
		margin-right: 0;

		padding: 17px;
	}


	#abadappAccommodation .abadapp-stay-bottom-grid {

		padding-left: 0;
		padding-right: 0;

		gap: 12px;
	}


	#abadappAccommodation .abadapp-stay-info-card {

		padding: 17px;
	}


	#abadappAccommodation .abadapp-stay-disclaimer {

		margin:
			12px
			0
			0;

		padding:
			11px
			13px;
	}

}

/* =========================================================
   ABADAPP — TRANSPORTES
   ALINHAMENTO FINAL + ESPAÇAMENTO
========================================================= */


/* ---------------------------------------------------------
   BLOCO COMPLETO DOS TRANSPORTES
--------------------------------------------------------- */

#abadappAccommodation
.abadapp-stay-section-heading--transport {

	margin-top: 34px !important;
	margin-bottom: 0 !important;

	padding:
		22px 22px 8px !important;

	border:
		1px solid
		rgba(255,255,255,.10) !important;

	border-bottom: 0 !important;

	border-radius:
		20px 20px 0 0 !important;

	background:
		#10255d !important;
}


/* ---------------------------------------------------------
   TEXTO INTRODUTÓRIO DOS HORÁRIOS
--------------------------------------------------------- */

#abadappAccommodation
.abadapp-stay-schedule-note {

	margin: 0 !important;

	padding:
		0 22px 18px !important;

	border-left:
		1px solid
		rgba(255,255,255,.10) !important;

	border-right:
		1px solid
		rgba(255,255,255,.10) !important;

	background:
		#10255d !important;
}


/* ---------------------------------------------------------
   TABELAS
--------------------------------------------------------- */

#abadappAccommodation
.abadapp-stay-schedules {

	margin: 0 !important;

	padding:
		0 22px 24px !important;

	border-left:
		1px solid
		rgba(255,255,255,.10) !important;

	border-right:
		1px solid
		rgba(255,255,255,.10) !important;

	background:
		#10255d !important;
}


/* ---------------------------------------------------------
   MOBILITEIT
   MESMAS MARGENS DAS TABELAS
--------------------------------------------------------- */

#abadappAccommodation
.abadapp-stay-mobiliteit {

	margin: 0 !important;

	padding:
		0 22px 18px !important;

	border-left:
		1px solid
		rgba(255,255,255,.10) !important;

	border-right:
		1px solid
		rgba(255,255,255,.10) !important;

	border-top: 0 !important;
	border-bottom: 0 !important;

	background:
		#10255d !important;
}


/* cartão interno Mobiliteit */

#abadappAccommodation
.abadapp-stay-mobiliteit__content {

	width: 100% !important;

	padding: 20px !important;

	border:
		1px solid
		rgba(255,255,255,.09) !important;

	border-radius:
		16px !important;

	background:
		rgba(255,255,255,.055) !important;
}


/*
 * O ícone "M" deixa de criar uma coluna
 * diferente das restantes secções.
 */

#abadappAccommodation
.abadapp-stay-mobiliteit {

	grid-template-columns: 1fr !important;
}


#abadappAccommodation
.abadapp-stay-mobiliteit__icon {

	display: none !important;
}


/* ---------------------------------------------------------
   INFORMAÇÕES ÚTEIS + LÍNGUAS
--------------------------------------------------------- */

#abadappAccommodation
.abadapp-stay-bottom-grid {

	margin: 0 !important;

	padding:
		0 22px 22px !important;

	border-left:
		1px solid
		rgba(255,255,255,.10) !important;

	border-right:
		1px solid
		rgba(255,255,255,.10) !important;

	border-bottom:
		1px solid
		rgba(255,255,255,.10) !important;

	border-radius:
		0 0 20px 20px !important;

	background:
		#10255d !important;
}


/* ambos os cards exatamente iguais */

#abadappAccommodation
.abadapp-stay-info-card {

	height: 100% !important;

	margin: 0 !important;

	padding: 18px !important;

	border-radius:
		16px !important;

	background:
		rgba(255,255,255,.055) !important;
}


/* ---------------------------------------------------------
   APAGAR NOTA FINAL
--------------------------------------------------------- */

#abadappAccommodation
.abadapp-stay-disclaimer {

	display: none !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 720px) {

	#abadappAccommodation
	.abadapp-stay-section-heading--transport {

		margin-top:
			28px !important;

		padding:
			18px 16px 8px !important;
	}


	#abadappAccommodation
	.abadapp-stay-schedule-note {

		padding:
			0 16px 16px !important;
	}


	#abadappAccommodation
	.abadapp-stay-schedules {

		padding:
			0 16px 20px !important;
	}


	#abadappAccommodation
	.abadapp-stay-mobiliteit {

		padding:
			0 16px 16px !important;
	}


	#abadappAccommodation
	.abadapp-stay-mobiliteit__content {

		padding:
			17px !important;
	}


	#abadappAccommodation
	.abadapp-stay-bottom-grid {

		padding:
			0 16px 18px !important;

		grid-template-columns:
			1fr !important;
	}

}

/* =========================================================
   ABADAPP — TRANSPORTES / ALINHAMENTO FINAL
========================================================= */

/* Mobiliteit alinhado exatamente com as tabelas */
#abadappAccommodation .abadapp-stay-mobiliteit {
	margin-top: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;

	padding:
		14px 18px 16px !important;

	border-radius: 0 !important;

	border-left:
		1px solid rgba(255,255,255,.10);

	border-right:
		1px solid rgba(255,255,255,.10);

	background: #10255d !important;
}


/* Card interior da Mobiliteit */
#abadappAccommodation
.abadapp-stay-mobiliteit__content {

	width: 100%;

	padding: 20px !important;

	border-radius: 16px;

	background:
		rgba(255,255,255,.075);
}


/* Informações úteis + Línguas */
#abadappAccommodation .abadapp-stay-bottom-grid {

	margin-top: 0 !important;

	padding:
		0 18px 18px !important;

	background: #10255d;

	border-left:
		1px solid rgba(255,255,255,.10);

	border-right:
		1px solid rgba(255,255,255,.10);
}


/* ligeiramente mais espaço dentro dos dois cards */
#abadappAccommodation .abadapp-stay-info-card {

	padding: 20px !important;
}


/* Faz toda a zona parecer uma única secção */
#abadappAccommodation .abadapp-stay-schedules {

	padding-bottom: 16px !important;
}


/* MOBILE */
@media (max-width: 720px) {

	#abadappAccommodation
	.abadapp-stay-mobiliteit {

		padding:
			12px 14px 14px !important;
	}


	#abadappAccommodation
	.abadapp-stay-bottom-grid {

		padding:
			0 14px 14px !important;
	}


	#abadappAccommodation
	.abadapp-stay-info-card {

		padding: 17px !important;
	}

}

/* =========================================================
   ABADAPP — HOTÉIS / TRANSPORTES / AJUSTES FINAIS
========================================================= */

/* ---------- HOTÉIS ---------- */

.abadapp-accommodation-section .abadapp-hotels-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.abadapp-accommodation-section .abadapp-hotel-card {
	background: #13265f;
	border: 1px solid rgba(255,255,255,0.09);
	border-radius: 18px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.abadapp-accommodation-section .abadapp-hotel-card__image {
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	display: block;
	background: #10204d;
}

.abadapp-accommodation-section .abadapp-hotel-card__body {
	padding: 16px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.abadapp-accommodation-section .abadapp-hotel-card__eyebrow {
	display: block;
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 700;
	color: #ffb347;
	margin-bottom: 8px;
}

.abadapp-accommodation-section .abadapp-hotel-card__title {
	font-size: 18px;
	font-weight: 800;
	line-height: 1.2;
	color: #ffffff;
	margin: 0 0 8px;
}

.abadapp-accommodation-section .abadapp-hotel-card__address {
	font-size: 13px;
	line-height: 1.45;
	color: rgba(255,255,255,0.82);
	margin-bottom: 14px;
}

.abadapp-accommodation-section .abadapp-hotel-meta {
	display: grid;
	gap: 10px;
}

.abadapp-accommodation-section .abadapp-hotel-meta__item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border-radius: 12px;
	background: rgba(255,255,255,0.06);
	color: #ffffff;
	font-size: 13px;
	line-height: 1.35;
}

.abadapp-accommodation-section .abadapp-hotel-meta__icon {
	width: 18px;
	min-width: 18px;
	height: 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	font-size: 15px;
	transform: translateY(-1px);
}

.abadapp-accommodation-section .abadapp-hotel-meta__text {
	display: flex;
	flex-direction: column;
	justify-content: center;
	line-height: 1.35;
}

.abadapp-accommodation-section .abadapp-hotel-meta__text strong,
.abadapp-accommodation-section .abadapp-hotel-meta__text span {
	display: block;
}

/* botão sempre em baixo */
.abadapp-accommodation-section .abadapp-hotel-card__cta-wrap {
	margin-top: auto;
	padding-top: 14px;
}

/* ---------- BOTÕES LARANJA ---------- */

.abadapp-accommodation-section .abadapp-hotel-card__cta,
.abadapp-accommodation-section .abadapp-mobiliteit-card__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 46px;
	padding: 0 18px;
	border-radius: 14px;
	background: #f59a17;
	color: #ffffff;
	font-weight: 700;
	text-decoration: none;
	border: none;
	box-shadow: none;
	transition: transform 0.18s ease, opacity 0.18s ease;
}

.abadapp-accommodation-section .abadapp-hotel-card__cta:hover,
.abadapp-accommodation-section .abadapp-mobiliteit-card__button:hover {
	opacity: 0.95;
	transform: translateY(-1px);
	color: #ffffff;
}

.abadapp-accommodation-section .abadapp-hotel-card__cta {
	width: 100%;
	margin-top: 0;
}

.abadapp-accommodation-section .abadapp-mobiliteit-card__button {
	margin-top: 14px;
}

/* ---------- SECÇÃO HORÁRIOS ---------- */

.abadapp-accommodation-section .abadapp-transport-section {
	margin-top: 26px;
	background: #10255d;
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 20px;
	padding: 18px;
}

.abadapp-accommodation-section .abadapp-transport-section__header {
	margin-bottom: 18px;
}

.abadapp-accommodation-section .abadapp-transport-section__header h3 {
	margin: 8px 0 6px;
	font-size: 18px;
	font-weight: 800;
	color: #ffffff;
}

.abadapp-accommodation-section .abadapp-transport-section__header p {
	margin: 0;
	font-size: 13px;
	color: rgba(255,255,255,0.78);
}

.abadapp-accommodation-section .abadapp-transport-tables {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 12px;
}

.abadapp-accommodation-section .abadapp-transport-table {
	background: #f8f8f8;
	border-radius: 14px;
	overflow: hidden;
	color: #12204a;
}

.abadapp-accommodation-section .abadapp-transport-table__top {
	padding: 12px 12px 10px;
	color: #fff;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.25;
}

.abadapp-accommodation-section .abadapp-transport-table--blue .abadapp-transport-table__top {
	background: #2d8cff;
}

.abadapp-accommodation-section .abadapp-transport-table--orange .abadapp-transport-table__top {
	background: #ff8b2b;
}

.abadapp-accommodation-section .abadapp-transport-table--purple .abadapp-transport-table__top {
	background: #8b5cf6;
}

.abadapp-accommodation-section .abadapp-transport-table--teal .abadapp-transport-table__top {
	background: #2d8cff;
}

.abadapp-accommodation-section .abadapp-transport-table--green .abadapp-transport-table__top {
	background: #26b56c;
}

.abadapp-accommodation-section .abadapp-transport-table__body {
	padding: 12px;
	font-size: 12px;
	line-height: 1.45;
}

.abadapp-accommodation-section .abadapp-transport-table__body table {
	width: 100%;
	border-collapse: collapse;
}

.abadapp-accommodation-section .abadapp-transport-table__body th,
.abadapp-accommodation-section .abadapp-transport-table__body td {
	padding: 4px 0;
	text-align: left;
	font-size: 12px;
	color: #14224f;
}

/* ---------- MOBILITEIT ---------- */

.abadapp-accommodation-section .abadapp-transport-footer {
	margin-top: 18px;
	display: grid;
	gap: 14px;
}

.abadapp-accommodation-section .abadapp-mobiliteit-card {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 18px;
	border-radius: 18px;
	background: #173375;
	border: 1px solid rgba(255,255,255,0.08);
}

.abadapp-accommodation-section .abadapp-mobiliteit-card__left {
	display: flex;
	align-items: center;
	gap: 14px;
}

.abadapp-accommodation-section .abadapp-mobiliteit-card__logo {
	width: 52px;
	height: 52px;
	object-fit: contain;
	border-radius: 14px;
	background: #ffffff;
	padding: 6px;
	flex-shrink: 0;
}

.abadapp-accommodation-section .abadapp-mobiliteit-card__eyebrow {
	display: block;
	font-size: 11px;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	font-weight: 700;
	color: #ffb347;
	margin-bottom: 6px;
}

.abadapp-accommodation-section .abadapp-mobiliteit-card__title {
	margin: 0 0 6px;
	font-size: 22px;
	font-weight: 800;
	color: #ffffff;
}

.abadapp-accommodation-section .abadapp-mobiliteit-card__text {
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
	color: rgba(255,255,255,0.8);
}

.abadapp-accommodation-section .abadapp-mobiliteit-card__note {
	display: block;
	margin-top: 10px;
	font-size: 12px;
	color: rgba(255,255,255,0.65);
}

/* ---------- INFO FINAL ---------- */

.abadapp-accommodation-section .abadapp-transport-info-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
}

.abadapp-accommodation-section .abadapp-info-card {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 18px;
	border-radius: 16px;
	background: #173375;
	border: 1px solid rgba(255,255,255,0.08);
}

.abadapp-accommodation-section .abadapp-info-card__icon {
	width: 32px;
	height: 32px;
	min-width: 32px;
	border-radius: 10px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(245,154,23,0.14);
	color: #f59a17;
	font-size: 14px;
	font-weight: 700;
}

.abadapp-accommodation-section .abadapp-info-card__eyebrow {
	display: block;
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	font-weight: 700;
	color: #ffb347;
	margin-bottom: 6px;
}

.abadapp-accommodation-section .abadapp-info-card__title {
	margin: 0 0 8px;
	font-size: 18px;
	font-weight: 800;
	color: #ffffff;
}

.abadapp-accommodation-section .abadapp-info-card__text,
.abadapp-accommodation-section .abadapp-info-card ul {
	margin: 0;
	font-size: 13px;
	line-height: 1.55;
	color: rgba(255,255,255,0.82);
}

.abadapp-accommodation-section .abadapp-info-card ul {
	padding-left: 18px;
}

/* apagar nota final se ainda existir */
.abadapp-accommodation-section .abadapp-transport-final-note {
	display: none !important;
}

/* ---------- MOBILE ---------- */

@media (max-width: 1024px) {
	.abadapp-accommodation-section .abadapp-hotels-grid {
		grid-template-columns: 1fr;
	}

	.abadapp-accommodation-section .abadapp-transport-tables {
		grid-template-columns: 1fr 1fr;
	}

	.abadapp-accommodation-section .abadapp-mobiliteit-card {
		flex-direction: column;
		align-items: flex-start;
	}

	.abadapp-accommodation-section .abadapp-transport-info-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.abadapp-accommodation-section .abadapp-transport-tables {
		grid-template-columns: 1fr;
	}

	.abadapp-accommodation-section .abadapp-hotel-card__title {
		font-size: 20px;
	}

	.abadapp-accommodation-section .abadapp-mobiliteit-card__title {
		font-size: 20px;
	}

	.abadapp-accommodation-section .abadapp-transport-section {
		padding: 14px;
	}

	.abadapp-accommodation-section .abadapp-mobiliteit-card {
		padding: 16px;
	}

	.abadapp-accommodation-section .abadapp-info-card {
		padding: 16px;
	}

	.abadapp-accommodation-section .abadapp-mobiliteit-card__logo {
		width: 46px;
		height: 46px;
	}
}

/* =========================================================
   ABADAPP — ALOJAMENTO
   ÍCONES SVG + LOGO MOBILITEIT
========================================================= */

#abadappAccommodation
.abadapp-stay-section-heading__icon svg {

	width: 21px;
	height: 21px;

	display: block;
}


#abadappAccommodation
.abadapp-stay-hotel__address-row {

	display: flex;

	align-items: flex-start;

	gap: 8px;

	margin-bottom: 14px;
}


#abadappAccommodation
.abadapp-stay-hotel__address-row
.abadapp-stay-hotel__address {

	margin: 0;

	min-height: 0;
}


#abadappAccommodation
.abadapp-stay-line-icon {

	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	flex: 0 0 30px !important;

	width: 30px !important;
	height: 30px !important;

	margin: 0 !important;

	border-radius: 9px;

	background:
		rgba(251,132,0,.12);

	color: #fb8400;

	font-size: initial !important;
}


#abadappAccommodation
.abadapp-stay-line-icon::before {

	display: none !important;

	content: none !important;
}


#abadappAccommodation
.abadapp-stay-line-icon svg {

	display: block;

	width: 17px;
	height: 17px;

	flex: 0 0 17px;
}


/* CTA HOTEL */

#abadappAccommodation
.abadapp-stay-book-button {

	display: grid !important;

	grid-template-columns:
		22px 1fr 22px;

	align-items: center !important;

	gap: 10px !important;

	text-align: left !important;
}


#abadappAccommodation
.abadapp-stay-book-button__icon {

	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	width: 22px !important;
	height: 22px !important;

	margin: 0 !important;

	font-size: initial !important;
}


#abadappAccommodation
.abadapp-stay-book-button__icon::before {

	display: none !important;

	content: none !important;
}


#abadappAccommodation
.abadapp-stay-book-button__icon svg {

	display: block;

	width: 18px;
	height: 18px;
}


#abadappAccommodation
.abadapp-stay-book-button__label {

	display: block;

	font-size: 14px !important;

	line-height: 1 !important;

	color: #fff !important;
}


#abadappAccommodation
.abadapp-stay-book-button strong {

	display: flex;

	align-items: center;
	justify-content: flex-end;

	margin: 0 !important;

	line-height: 1;
}


/* MOBILITEIT */

#abadappAccommodation
.abadapp-stay-mobiliteit__heading {

	display: flex;

	align-items: center;

	gap: 14px;

	margin-bottom: 10px;
}


#abadappAccommodation
.abadapp-stay-mobiliteit__logo {

	display: block;

	width: 58px;
	height: 58px;

	flex: 0 0 58px;

	object-fit: contain;

	padding: 6px;

	border-radius: 14px;

	background: #fff;
}


#abadappAccommodation
.abadapp-stay-mobiliteit__heading h3 {

	margin:
		3px 0 0;
}


@media (max-width: 720px) {

	#abadappAccommodation
	.abadapp-stay-mobiliteit__logo {

		width: 48px;
		height: 48px;

		flex-basis: 48px;
	}


	#abadappAccommodation
	.abadapp-stay-book-button__label {

		font-size:
			12px !important;
	}

}

/* =========================================================
   ABADAPP — ALOJAMENTO
   CORREÇÕES FINAIS: ÍCONES + MOBILE + MAPA
========================================================= */


/* =========================================================
   1. REMOVER ÍCONES DUPLICADOS ANTIGOS
========================================================= */

/*
 * Os novos ícones já estão em SVG dentro do HTML.
 * Por isso desligamos os pseudo-elementos antigos.
 */

#abadappAccommodation
.abadapp-stay-section-heading__icon::before,

#abadappAccommodation
.abadapp-stay-section-heading > span::before,

#abadappAccommodation
.abadapp-stay-route__head > span::before,

#abadappAccommodation
.abadapp-stay-book-button__icon::before,

#abadappAccommodation
.abadapp-stay-line-icon::before {

	content: none !important;
	display: none !important;
}


/* garantir que aparece apenas o SVG novo */

#abadappAccommodation
.abadapp-stay-section-heading__icon svg,
#abadappAccommodation
.abadapp-stay-line-icon svg,
#abadappAccommodation
.abadapp-stay-book-button__icon svg {

	display: block !important;

	width: 18px;
	height: 18px;

	flex: 0 0 18px;
}


/* ícone maior nos títulos */

#abadappAccommodation
.abadapp-stay-section-heading__icon svg {

	width: 21px;
	height: 21px;
}


/* =========================================================
   2. BOTÃO "VER NO MAPA" — LARANJA
========================================================= */

#abadappAccommodation
.abadapp-stay-outline-button {

	display: inline-flex;

	align-items: center;
	justify-content: center;

	min-height: 44px;

	padding:
		10px 18px;

	border: 0 !important;

	border-radius: 12px;

	background: #fb8400 !important;

	color: #ffffff !important;

	font-size: 13px;
	font-weight: 900;

	text-decoration: none !important;

	box-shadow:
		0 6px 16px
		rgba(251,132,0,.18);
}


#abadappAccommodation
.abadapp-stay-outline-button:hover {

	background: #ff951f !important;

	color: #ffffff !important;

	transform:
		translateY(-1px);
}


/* =========================================================
   3. MOBILE — HOTÉIS
========================================================= */

@media (max-width: 720px) {

	/*
	 * Cada hotel fica vertical:
	 *
	 * foto
	 * texto
	 * transportes
	 * botão
	 */

	#abadappAccommodation
	.abadapp-stay-hotels {

		display: grid !important;

		grid-template-columns: 1fr !important;

		gap: 16px !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel {

		display: block !important;

		width: 100% !important;

		height: auto !important;

		min-height: 0 !important;

		overflow: hidden !important;
	}


	/*
	 * CORREÇÃO PRINCIPAL:
	 * a imagem deixa de ocupar praticamente o ecrã todo.
	 */

	#abadappAccommodation
	.abadapp-stay-hotel__photo {

		width: 100% !important;

		height: 165px !important;

		min-height: 0 !important;

		max-height: 165px !important;

		aspect-ratio: auto !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__photo img {

		display: block !important;

		width: 100% !important;

		height: 165px !important;

		min-height: 0 !important;

		max-height: 165px !important;

		object-fit: cover !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__body {

		display: flex !important;

		flex-direction: column !important;

		width: 100% !important;

		padding: 15px !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel h4 {

		margin-bottom: 8px !important;

		font-size: 19px !important;
	}


	/* endereço */

	#abadappAccommodation
	.abadapp-stay-hotel__address-row {

		display: flex !important;

		align-items: flex-start !important;

		gap: 9px !important;

		margin-bottom: 13px !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__address {

		margin: 0 !important;

		min-height: 0 !important;

		font-size: 11px !important;

		line-height: 1.45 !important;
	}


	/* transportes */

	#abadappAccommodation
	.abadapp-stay-hotel__transport {

		display: grid !important;

		grid-template-columns: 1fr !important;

		gap: 7px !important;

		margin-bottom: 13px !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__transport > div {

		display: flex !important;

		align-items: center !important;

		gap: 9px !important;

		padding:
			8px 10px !important;
	}


	#abadappAccommodation
	.abadapp-stay-line-icon {

		flex:
			0 0 29px !important;

		width: 29px !important;
		height: 29px !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__transport p {

		font-size: 11px !important;

		line-height: 1.25 !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__transport small {

		font-size: 9px !important;
	}


	/* botão */

	#abadappAccommodation
	.abadapp-stay-book-button {

		display: grid !important;

		grid-template-columns:
			20px 1fr 20px !important;

		align-items: center !important;

		width: 100% !important;

		min-height: 44px !important;

		margin-top: 4px !important;

		padding:
			10px 13px !important;

		border-radius: 11px !important;
	}


	#abadappAccommodation
	.abadapp-stay-book-button__label {

		font-size: 12px !important;

		line-height: 1.2 !important;
	}


	/* =====================================================
	   LOCAL DOS JOGOS — MOBILE
	===================================================== */

	#abadappAccommodation
	.abadapp-stay-venue {

		display: grid !important;

		grid-template-columns:
			44px 1fr !important;

		gap: 12px !important;

		padding: 15px !important;
	}


	#abadappAccommodation
	.abadapp-stay-venue__icon {

		width: 44px !important;
		height: 44px !important;

		border-radius: 12px !important;
	}


	/*
	 * botão mapa ocupa largura completa
	 * debaixo do endereço
	 */

	#abadappAccommodation
	.abadapp-stay-outline-button {

		grid-column:
			1 / -1 !important;

		width: 100% !important;

		margin-top: 4px !important;

		min-height: 44px !important;

		text-align: center !important;
	}


	/* =====================================================
	   TÍTULOS — MOBILE
	===================================================== */

	#abadappAccommodation
	.abadapp-stay-section-heading {

		gap: 10px !important;
	}


	#abadappAccommodation
	.abadapp-stay-section-heading > span {

		flex:
			0 0 38px !important;

		width: 38px !important;
		height: 38px !important;

		border-radius: 11px !important;
	}


	#abadappAccommodation
	.abadapp-stay-section-heading h3 {

		font-size: 20px !important;
	}

}


/* =========================================================
   4. MOBILE MUITO PEQUENO
========================================================= */

@media (max-width: 430px) {

	#abadappAccommodation
	.abadapp-stay-hotel__photo,
	#abadappAccommodation
	.abadapp-stay-hotel__photo img {

		height: 150px !important;

		max-height: 150px !important;
	}


	#abadappAccommodation
	.abadapp-stay-hotel__body {

		padding: 14px !important;
	}

}

/* =========================================================
   ABADAPP — ALOJAMENTO
   CORREÇÕES FINAIS DE ÍCONES / MOBILE
========================================================= */


/* =========================================================
   1. BOTÕES DOS HOTÉIS
   remover ícone duplicado e alinhar tudo
========================================================= */

#abadappAccommodation
.abadapp-stay-book-button__icon::before,
#abadappAccommodation
.abadapp-stay-book-button__icon::after {

	content: none !important;
	display: none !important;
}


#abadappAccommodation
.abadapp-stay-book-button {

	display: grid !important;

	grid-template-columns:
		22px 1fr 22px !important;

	align-items: center !important;

	column-gap: 9px !important;

	padding:
		0 16px !important;

	min-height:
		48px !important;
}


#abadappAccommodation
.abadapp-stay-book-button__icon {

	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	width: 22px !important;
	height: 22px !important;

	margin: 0 !important;

	line-height: 1 !important;
}


#abadappAccommodation
.abadapp-stay-book-button__icon svg {

	display: block !important;

	width: 18px !important;
	height: 18px !important;

	margin: 0 !important;
}


#abadappAccommodation
.abadapp-stay-book-button__label {

	display: flex !important;

	align-items: center !important;

	height: 100%;

	margin: 0 !important;

	line-height: 1.1 !important;
}


#abadappAccommodation
.abadapp-stay-book-button strong {

	display: flex !important;

	align-items: center !important;
	justify-content: flex-end !important;

	height: 100%;

	margin: 0 !important;

	line-height: 1 !important;
}


/* =========================================================
   2. ÍCONES DOS HORÁRIOS
========================================================= */

/*
 * elimina o quadradinho antigo
 */

#abadappAccommodation
.abadapp-stay-route__head > span::before {

	content: none !important;

	display: none !important;
}


#abadappAccommodation
.abadapp-stay-route__head > span {

	position: relative;

	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	flex: 0 0 30px;

	width: 30px;
	height: 30px;

	border-radius: 9px;

	background:
		rgba(255,255,255,.16);

	color: #fff;
}


/* AUTOCARROS */

#abadappAccommodation
.abadapp-stay-route__head:not(.abadapp-stay-route__head--train)
> span::after {

	content: "";

	display: block;

	width: 17px;
	height: 17px;

	background: currentColor;

	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h12a3 3 0 0 1 3 3v11a3 3 0 0 1-2 2.83V21a1 1 0 0 1-2 0v-2H7v2a1 1 0 0 1-2 0v-2.17A3 3 0 0 1 3 16V5a3 3 0 0 1 3-3Zm0 2a1 1 0 0 0-1 1v5h14V5a1 1 0 0 0-1-1H6Zm-1 8v4a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-4H5Zm3 1.5A1.5 1.5 0 1 1 8 16.5a1.5 1.5 0 0 1 0-3Zm8 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Z'/%3E%3C/svg%3E")
		center / contain
		no-repeat;

	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 2h12a3 3 0 0 1 3 3v11a3 3 0 0 1-2 2.83V21a1 1 0 0 1-2 0v-2H7v2a1 1 0 0 1-2 0v-2.17A3 3 0 0 1 3 16V5a3 3 0 0 1 3-3Zm0 2a1 1 0 0 0-1 1v5h14V5a1 1 0 0 0-1-1H6Zm-1 8v4a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-4H5Zm3 1.5A1.5 1.5 0 1 1 8 16.5a1.5 1.5 0 0 1 0-3Zm8 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Z'/%3E%3C/svg%3E")
		center / contain
		no-repeat;
}


/* COMBOIO */

#abadappAccommodation
.abadapp-stay-route__head--train
> span::after {

	content: "";

	display: block;

	width: 17px;
	height: 17px;

	background: currentColor;

	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h10a3 3 0 0 1 3 3v10a4 4 0 0 1-4 4l2 3h-2.5l-2-3h-3l-2 3H6l2-3a4 4 0 0 1-4-4V5a3 3 0 0 1 3-3Zm0 2a1 1 0 0 0-1 1v5h12V5a1 1 0 0 0-1-1H7Zm-1 8v3a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-3H6Zm2.5 1a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Zm7 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Z'/%3E%3C/svg%3E")
		center / contain
		no-repeat;

	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 2h10a3 3 0 0 1 3 3v10a4 4 0 0 1-4 4l2 3h-2.5l-2-3h-3l-2 3H6l2-3a4 4 0 0 1-4-4V5a3 3 0 0 1 3-3Zm0 2a1 1 0 0 0-1 1v5h12V5a1 1 0 0 0-1-1H7Zm-1 8v3a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2v-3H6Zm2.5 1a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Zm7 0a1.5 1.5 0 1 1 0 3 1.5 1.5 0 0 1 0-3Z'/%3E%3C/svg%3E")
		center / contain
		no-repeat;
}


/* =========================================================
   3. INFO ÚTEIS + LÍNGUAS
   mesmo estilo para os dois cards
========================================================= */

#abadappAccommodation
.abadapp-stay-info-card__icon {

	position: relative;

	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	flex: 0 0 42px !important;

	width: 42px !important;
	height: 42px !important;

	border-radius: 12px !important;

	background:
		rgba(251,132,0,.12) !important;

	color:
		#fb8400 !important;

	font-size: 0 !important;
}


/* INFO */

#abadappAccommodation
.abadapp-stay-info-card:first-child
.abadapp-stay-info-card__icon::before {

	content: "i";

	display: block;

	font-family:
		Arial,
		sans-serif;

	font-size: 20px;

	font-weight: 900;

	line-height: 1;
}


/* LÍNGUAS — BALÃO DE CONVERSA */

#abadappAccommodation
.abadapp-stay-info-card:nth-child(2)
.abadapp-stay-info-card__icon::before {

	content: "";

	display: block;

	width: 20px;
	height: 20px;

	background: currentColor;

	-webkit-mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.49 3 2 6.81 2 11.5c0 2.48 1.29 4.79 3.53 6.39L4.5 22l4.33-2.17c1.02.28 2.08.42 3.17.42 5.51 0 10-3.81 10-8.5S17.51 3 12 3Zm-4 9.5A1.5 1.5 0 1 1 8 9.5a1.5 1.5 0 0 1 0 3Zm4 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3Zm4 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3Z'/%3E%3C/svg%3E")
		center / contain
		no-repeat;

	mask:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 3C6.49 3 2 6.81 2 11.5c0 2.48 1.29 4.79 3.53 6.39L4.5 22l4.33-2.17c1.02.28 2.08.42 3.17.42 5.51 0 10-3.81 10-8.5S17.51 3 12 3Zm-4 9.5A1.5 1.5 0 1 1 8 9.5a1.5 1.5 0 0 1 0 3Zm4 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3Zm4 0a1.5 1.5 0 1 1 0-3 1.5 1.5 0 0 1 0 3Z'/%3E%3C/svg%3E")
		center / contain
		no-repeat;
}


/* esconder o "A" antigo */

#abadappAccommodation
.abadapp-stay-info-card:nth-child(2)
.abadapp-stay-info-card__icon::after {

	content: none !important;
	display: none !important;
}


/* MESMO TÍTULO NOS DOIS */

#abadappAccommodation
.abadapp-stay-info-card h3 {

	margin:
		0 0 9px !important;

	color:
		#ffffff !important;

	font-size:
		18px !important;

	font-weight:
		800 !important;

	line-height:
		1.15 !important;

	letter-spacing:
		0 !important;

	text-transform:
		none !important;
}


/*
 * Não precisamos do label laranja
 * "LÍNGUAS ÚTEIS", porque estava a fazer
 * o segundo card parecer diferente.
 */

#abadappAccommodation
.abadapp-stay-info-card__eyebrow {

	display: none !important;
}


/* =========================================================
   4. MOBILE — ALINHAMENTO
========================================================= */

@media (max-width: 720px) {

	/* HOTEL CTA */

	#abadappAccommodation
	.abadapp-stay-book-button {

		grid-template-columns:
			20px 1fr 18px !important;

		min-height:
			46px !important;

		padding:
			0 13px !important;

		column-gap:
			8px !important;
	}


	#abadappAccommodation
	.abadapp-stay-book-button__icon {

		width:
			20px !important;

		height:
			20px !important;
	}


	#abadappAccommodation
	.abadapp-stay-book-button__icon svg {

		width:
			17px !important;

		height:
			17px !important;
	}


	#abadappAccommodation
	.abadapp-stay-book-button__label {

		font-size:
			12px !important;
	}


	/* HORÁRIOS */

	#abadappAccommodation
	.abadapp-stay-route__head {

		display: flex !important;

		align-items:
			flex-start !important;

		gap:
			9px !important;
	}


	#abadappAccommodation
	.abadapp-stay-route__head > span {

		flex:
			0 0 28px !important;

		width:
			28px !important;

		height:
			28px !important;

		margin-top:
			1px !important;
	}


	#abadappAccommodation
	.abadapp-stay-route__head > div {

		min-width: 0;

		flex: 1;
	}


	/* INFO CARDS */

	#abadappAccommodation
	.abadapp-stay-info-card {

		display: grid !important;

		grid-template-columns:
			42px 1fr !important;

		align-items:
			start !important;

		column-gap:
			13px !important;
	}


	#abadappAccommodation
	.abadapp-stay-info-card__icon {

		margin-top:
			0 !important;
	}

}

/* =========================================================
   ABADAPP — REMOVER ÍCONE DUPLICADO DOS BOTÕES HOTEL
========================================================= */

#abadappAccommodation
.abadapp-stay-book-button::before,
#abadappAccommodation
.abadapp-stay-book-button::after,
#abadappAccommodation
.abadapp-stay-book-button
.abadapp-stay-book-button__icon::before,
#abadappAccommodation
.abadapp-stay-book-button
.abadapp-stay-book-button__icon::after {

	content: none !important;

	display: none !important;
}


/* garantir que só aparece o SVG novo */

#abadappAccommodation
.abadapp-stay-book-button
.abadapp-stay-book-button__icon {

	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	width: 22px !important;
	height: 22px !important;

	flex: 0 0 22px !important;

	margin: 0 !important;
	padding: 0 !important;
}


#abadappAccommodation
.abadapp-stay-book-button
.abadapp-stay-book-button__icon svg {

	display: block !important;

	width: 18px !important;
	height: 18px !important;

	margin: 0 !important;
}

/* =========================================================
   FIX DEFINITIVO — DUPLO ÍCONE RESERVAR HOTEL
========================================================= */

/*
 * Remove QUALQUER pseudo-ícone criado nas spans do botão.
 * O único ícone que fica é o SVG real do HTML.
 */

#abadappAccommodation
a.abadapp-stay-book-button > span::before,
#abadappAccommodation
a.abadapp-stay-book-button > span::after,
#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__label::before,
#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__label::after,
#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__icon::before,
#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__icon::after {

	content: none !important;
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	background: none !important;
	-webkit-mask: none !important;
	mask: none !important;
}


/* ícone verdadeiro — apenas o SVG */

#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__icon {

	display: flex !important;
	align-items: center !important;
	justify-content: center !important;

	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;

	margin: 0 !important;
	padding: 0 !important;
}


#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__icon svg {

	display: block !important;

	width: 18px !important;
	height: 18px !important;
}


/* texto — garantir que não recebe nenhum ícone */

#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__label {

	display: block !important;

	margin: 0 !important;
	padding: 0 !important;

	background: none !important;
}

/* =========================================================
   FIX FINAL — BOTÃO RESERVAR HOTEL
   ícone | texto | seta — tudo alinhado
========================================================= */

#abadappAccommodation
a.abadapp-stay-book-button {

	display: flex !important;

	align-items: center !important;
	justify-content: flex-start !important;

	gap: 10px !important;

	width: 100% !important;
	min-height: 48px !important;

	padding: 0 16px !important;

	background: #fb8400 !important;
	color: #ffffff !important;

	border: 0 !important;
	border-radius: 12px !important;

	text-decoration: none !important;

	line-height: 1 !important;
}


/* ÍCONE */

#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__icon {

	position: static !important;

	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	flex: 0 0 20px !important;

	width: 20px !important;
	height: 20px !important;

	margin: 0 !important;
	padding: 0 !important;

	transform: none !important;

	line-height: 1 !important;
}


#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__icon svg {

	display: block !important;

	width: 18px !important;
	height: 18px !important;

	margin: 0 !important;
}


/* TEXTO */

#abadappAccommodation
a.abadapp-stay-book-button
.abadapp-stay-book-button__label {

	position: static !important;

	display: flex !important;

	align-items: center !important;

	flex: 1 1 auto !important;

	width: auto !important;
	height: auto !important;

	margin: 0 !important;
	padding: 0 !important;

	top: auto !important;
	right: auto !important;
	bottom: auto !important;
	left: auto !important;

	transform: none !important;

	color: #ffffff !important;

	font-size: 14px !important;
	font-weight: 900 !important;

	line-height: 1 !important;

	text-align: left !important;
}


/* SETA */

#abadappAccommodation
a.abadapp-stay-book-button strong {

	position: static !important;

	display: flex !important;

	align-items: center !important;
	justify-content: center !important;

	flex: 0 0 20px !important;

	width: 20px !important;
	height: 20px !important;

	margin: 0 0 0 auto !important;
	padding: 0 !important;

	transform: none !important;

	color: #ffffff !important;

	font-size: 16px !important;

	line-height: 1 !important;
}


/* NENHUM ÍCONE EXTRA */

#abadappAccommodation
a.abadapp-stay-book-button::before,
#abadappAccommodation
a.abadapp-stay-book-button::after,
#abadappAccommodation
a.abadapp-stay-book-button > span::before,
#abadappAccommodation
a.abadapp-stay-book-button > span::after {

	content: none !important;
	display: none !important;
}


/* MOBILE */

@media (max-width: 720px) {

	#abadappAccommodation
	a.abadapp-stay-book-button {

		min-height: 46px !important;

		padding: 0 14px !important;

		gap: 9px !important;
	}


	#abadappAccommodation
	a.abadapp-stay-book-button
	.abadapp-stay-book-button__label {

		font-size: 12px !important;
	}

}