:root {
	--shell-ink: #10213f;
	--shell-coral: #f5634b;
	--shell-paper: #fbfaf7;
	--shell-white: #fff;
	--shell-muted: #687386;
	--shell-line: rgba(16, 33, 63, .11);
}

html { background: var(--shell-white); color-scheme: light; }
body:not(.ec-admin):not(.ec-admin-auth) {
	background: var(--shell-paper);
	color: var(--shell-ink);
	font-family: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
body:not(.ec-admin):not(.ec-admin-auth) main { isolation: isolate; }
body:not(.ec-admin):not(.ec-admin-auth) :where(h1, h2, h3, h4, h5, h6, p, a, span, li, dt, dd, blockquote, figcaption, label, legend, small, strong, b, em, th, td, caption, button, input, select, textarea, optgroup) {
	font-family: "Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

.ec-nav-shell .ec-nav { grid-template-columns: auto minmax(0, 1fr) auto; }
.ec-nav-shell .rts-desktop-menu { gap: 2px !important; }
.ec-nav-shell .ec-nav-explore { position: relative; }
.ec-nav-shell .ec-nav-explore__toggle {
	align-items: center;
	background: transparent;
	border: 0;
	display: flex !important;
	gap: 7px;
	cursor: pointer;
}
.ec-nav-shell .ec-nav-explore__toggle i { font-size: 10px; transition: transform .2s ease; }
.ec-nav-shell .ec-nav-explore__toggle[aria-expanded="true"] i { transform: rotate(180deg); }
.ec-nav-shell .ec-nav-explore__menu {
	background: rgba(255, 255, 255, .98);
	border: 1px solid var(--shell-line);
	border-radius: 20px;
	box-shadow: 0 28px 80px rgba(16, 33, 63, .16);
	left: 50%;
	min-width: 620px;
	padding: 20px;
	position: absolute;
	top: calc(100% + 18px);
	transform: translateX(-58%);
	z-index: 1100;
}
.ec-nav-shell .ec-nav-explore__menu[hidden] { display: none !important; }
.ec-nav-explore__intro { border-bottom: 1px solid var(--shell-line); margin-bottom: 14px; padding: 2px 4px 16px; }
.ec-nav-explore__intro small { color: #738096; display: block; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.ec-nav-explore__intro strong { color: var(--shell-ink); display: block; font-size: 20px; margin-top: 3px; }
.ec-nav-explore__links { display: grid; gap: 4px 10px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ec-nav-explore__links a {
	align-items: center;
	border-radius: 13px;
	color: var(--shell-ink) !important;
	display: flex;
	gap: 12px;
	padding: 12px;
}
.ec-nav-explore__links a:hover { background: #f5f4f0; }
.ec-nav-explore__links i { align-items: center; background: #f1eee8; border-radius: 10px; color: var(--shell-coral); display: flex; flex: 0 0 40px; height: 40px; justify-content: center; }
.ec-nav-explore__links span { display: flex; flex-direction: column; min-width: 0; }
.ec-nav-explore__links strong { font-size: 13px; line-height: 1.25; }
.ec-nav-explore__links small { color: #7a8495; font-size: 10px; margin-top: 2px; }
.ec-nav-explore__all { align-items: center; color: var(--shell-coral) !important; display: flex; font-size: 12px; font-weight: 800; gap: 8px; justify-content: flex-end; margin-top: 10px; padding: 8px 4px 2px; }

.ec-mobile-menu__eyebrow { color: #8b93a1; font-size: 10px; font-weight: 800; letter-spacing: .1em; margin: 30px 0 10px; text-transform: uppercase; }
.ec-mobile-links > li > a { align-items: center; display: flex !important; gap: 12px; }
.ec-mobile-links > li > a > i:first-child { color: var(--shell-coral); font-size: 17px; width: 22px; }
.ec-mobile-explore { border-bottom: 1px solid rgba(16, 33, 63, .09); }
.ec-mobile-explore summary { align-items: center; color: var(--shell-ink); cursor: pointer; display: flex; font-size: 22px !important; font-weight: 800; justify-content: space-between; list-style: none; padding: 17px 0; }
.ec-mobile-explore summary span { align-items: center; display: flex; gap: 12px; }
.ec-mobile-explore summary span i { color: var(--shell-coral); font-size: 17px; width: 22px; }
.ec-mobile-explore summary > i { font-size: 12px; margin-right: 4px; }
.ec-mobile-explore summary::-webkit-details-marker { display: none; }
.ec-mobile-explore[open] summary i { transform: rotate(180deg); }
.ec-mobile-explore div { display: grid; gap: 2px; padding: 0 0 14px 18px; }
.ec-mobile-explore div a { color: #566277; font-size: 15px !important; font-weight: 700; padding: 9px 0; }
.side-bar.header-eight .close-icon-menu { left: auto !important; right: 18px !important; top: 18px !important; }

.ec-footer {
	background: var(--shell-white) !important;
	border-top: 1px solid var(--shell-line);
	color: var(--shell-ink) !important;
	overflow: hidden;
	padding: 64px 0 24px !important;
	position: relative;
}
.ec-footer::before,
.ec-footer__glow { display: none !important; }
.ec-footer__logo img { max-width: 156px; }
.ec-footer__brand p {
	color: var(--shell-muted) !important;
	font-size: 14px;
	line-height: 1.75;
	margin-top: 22px;
	max-width: 470px;
}
.ec-footer__brand::after {
	color: var(--shell-ink) !important;
	font-size: clamp(28px, 4vw, 54px) !important;
	line-height: 1 !important;
}
.ec-footer__columns h3 {
	color: var(--shell-ink) !important;
	font-size: 12px;
	letter-spacing: .08em;
}
.ec-footer__columns a {
	color: var(--shell-muted) !important;
	font-size: 14px;
}
.ec-footer__columns a:hover,
.ec-footer__bottom a:hover { color: var(--shell-coral) !important; }
.ec-footer__bottom {
	align-items: center;
	border-top: 1px solid var(--shell-line) !important;
	display: grid !important;
	gap: 14px;
	grid-template-columns: auto minmax(280px, 1fr) auto;
}
.ec-footer__bottom p,
.ec-footer__bottom a { color: var(--shell-muted) !important; font-size: 12px; }
.ec-footer__independence { font-size: 11px !important; line-height: 1.55 !important; margin: 0 auto !important; max-width: 590px; text-align: center; }

/* Shared secondary-page language */
.ec-guide-page .ec-guide-hero { background: #10213f !important; min-height: auto !important; padding: 154px 0 0 !important; }
.ec-guide-page .ec-guide-hero__media,
.ec-guide-page .ec-guide-hero__shade { display: none !important; }
.ec-guide-page .ec-guide-hero > .container { align-items: start !important; padding-bottom: 78px; }
.ec-guide-page .ec-guide-hero__panel { backdrop-filter: none !important; background: #172b4d !important; box-shadow: none !important; }
.ec-guide-page .ec-guide-quick { background: #fff; border-bottom: 1px solid var(--shell-line); }
.ec-guide-page .ec-guide-quick .container { display: grid; grid-template-columns: repeat(4, 1fr); padding-bottom: 0; }
.ec-guide-page .ec-guide-quick a { align-items: center; border-right: 1px solid var(--shell-line); color: var(--shell-ink); display: flex; font-size: 13px; font-weight: 800; gap: 10px; justify-content: center; min-height: 66px; }
.ec-guide-page .ec-guide-quick a:first-child { border-left: 1px solid var(--shell-line); }
.ec-guide-page .ec-guide-quick i { color: var(--shell-coral); font-size: 17px; }
.ec-guide-page .ec-guide-intro__tags { display: flex; flex-wrap: wrap; gap: 8px; grid-column: 1 / -1; }
.ec-guide-page .ec-guide-intro__tags span { background: #fff; border: 1px solid var(--shell-line); border-radius: 999px; color: #526076; font-size: 11px; font-weight: 800; padding: 9px 13px; }
.ec-guide-page .ec-guide-card { border-radius: 16px !important; display: flex; flex-direction: column; }
.ec-guide-page .ec-guide-card > i { align-items: center; background: #fff1ed; border-radius: 12px; color: var(--shell-coral); display: flex; font-size: 20px; height: 48px; justify-content: center; margin-bottom: 30px; order: -1; width: 48px; }
.ec-guide-page .ec-guide-card small { border-top: 1px solid var(--shell-line); margin-top: auto; padding-top: 18px; }
.ec-guide-page .ec-guide-detail { border-radius: 16px !important; }
.ec-guide-page .ec-guide-detail > div { padding: 0 !important; }
.ec-guide-page .ec-guide-timeline { counter-reset: guide-step; }
.ec-guide-page .ec-guide-timeline article { counter-increment: guide-step; padding-top: 62px !important; position: relative; }
.ec-guide-page .ec-guide-timeline article::before { align-items: center; background: var(--shell-ink); border-radius: 50%; color: #fff; content: counter(guide-step); display: flex; font-size: 12px; font-weight: 900; height: 34px; justify-content: center; left: 24px; position: absolute; top: 22px; width: 34px; }
.ec-guide-page .ec-guide-related__card { align-items: center; background: #fff; border: 1px solid var(--shell-line); border-radius: 14px; color: var(--shell-ink); display: flex; justify-content: space-between; min-height: 82px; padding: 22px; }
.ec-guide-page .ec-guide-related__card span { color: var(--shell-ink) !important; font-size: 16px !important; font-weight: 800; position: static !important; }
.ec-guide-page .ec-guide-related__card i { color: var(--shell-coral); }

.ec-events-page main,
.ec-event-page main { padding-top: 76px; }
.ec-events-page .ec-events-hero { padding-top: 72px; }
.ec-events-page .ec-events-kicker,
.ec-event-page .ec-events-kicker { font-size: 11px; }
.ec-events-page .ec-events-hero > div > p:last-child { font-size: 16px; }
.ec-events-page .ec-events-hero > a,
.ec-events-page .ec-events-search button { font-size: 13px; min-height: 46px; }
.ec-events-page .ec-events-search label { font-size: 11px; }
.ec-events-page .ec-events-search input,
.ec-events-page .ec-events-search select { font-size: 13px; min-height: 46px; }
.ec-events-page .ec-event-card__copy > p,
.ec-events-page .ec-event-card__date span,
.ec-events-page .ec-event-card__organizer > span { font-size: 10px; }
.ec-events-page .ec-event-card__copy h3 { font-size: 20px; }
.ec-events-page .ec-event-card__copy > span,
.ec-events-page .ec-event-card__organizer a { font-size: 11px; }
.ec-event-page .ec-event-detail-back,
.ec-event-page .ec-event-detail-hero__actions a,
.ec-event-page .ec-event-detail-hero__actions button { font-size: 13px; }
.ec-event-page .ec-event-detail-info small { font-size: 10px; }
.ec-event-page .ec-event-detail-info strong { font-size: 14px; }
.ec-event-page .ec-event-detail-description { font-size: 17px; }
.ec-member-page .ec-member-main { padding-top: 112px; }
.ec-member-public .ec-member-public__main { padding-top: 136px; }
.ec-organizer-public .ec-organizer-public__hero { margin-top: 76px; }

@media (max-width: 1180px) {
	.ec-nav-shell .main-nav-area { display: none !important; }
	.ec-nav-shell .ec-menu-toggle { display: inline-flex !important; }
	.ec-nav-shell .ec-nav { grid-template-columns: auto 1fr; }
	.ec-nav-shell .button-area-start { grid-column: 2; }
}

@media (max-width: 720px) {
	.ec-nav-shell .ec-nav-club { display: none !important; }
	.ec-nav-shell .ec-nav { min-height: 68px; padding-inline: 18px; }
	.ec-nav-shell .ec-nav .logo img { max-width: 112px; }
	.ec-footer__bottom { grid-template-columns: 1fr; text-align: left; }
	.ec-footer__independence { margin: 0 !important; text-align: left; }
	.ec-guide-page .ec-guide-hero { padding-top: 110px !important; }
	.ec-guide-page .ec-guide-hero > .container { grid-template-columns: 1fr !important; padding-bottom: 46px; }
	.ec-guide-page .ec-guide-quick .container { grid-template-columns: repeat(2, 1fr); }
	.ec-guide-page .ec-guide-intro .container { grid-template-columns: 1fr !important; }
	.ec-events-page main,
	.ec-event-page main { padding-top: 68px; }
	.ec-member-page .ec-member-main { padding-top: 96px; }
	.ec-member-public .ec-member-public__main { padding-top: 112px; }
	.ec-organizer-public .ec-organizer-public__hero { margin-top: 68px; }
}
