/* WorldClock Core — front-end styles (theme-agnostic, tuned for Kadence) */
:root {
	--wc-bg: #f6f7f9;
	--wc-surface: #ffffff;
	--wc-ink: #0d1321;
	--wc-muted: #5b6475;
	--wc-line: #e3e6ec;
	--wc-accent: #2f5bff;
	--wc-accent-ink: #ffffff;
	--wc-accent-soft: #e9eeff;
	--wc-night: #111a33;
	--wc-radius: 18px;
	--wc-shadow: 0 1px 2px rgba(13, 19, 33, .04), 0 8px 24px rgba(13, 19, 33, .06);
}
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		--wc-bg: #0b0f19;
		--wc-surface: #121828;
		--wc-ink: #eef1f7;
		--wc-muted: #9aa3b5;
		--wc-line: #232b3e;
		--wc-accent: #7b9bff;
		--wc-accent-ink: #0b0f19;
		--wc-accent-soft: #1a2342;
		--wc-night: #060912;
		--wc-shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .25);
	}
	:root:not([data-theme="light"]) body.wc-view { background: var(--wc-bg); color: var(--wc-ink); }
	:root:not([data-theme="light"]) body.wc-view .site-header-wrap,
	:root:not([data-theme="light"]) body.wc-view .site-footer-wrap { filter: none; }
}
:root[data-theme="dark"] {
	--wc-bg: #0b0f19; --wc-surface: #121828; --wc-ink: #eef1f7; --wc-muted: #9aa3b5; --wc-line: #232b3e;
	--wc-accent: #7b9bff; --wc-accent-ink: #0b0f19; --wc-accent-soft: #1a2342; --wc-night: #060912;
}

body.wc-view { background: var(--wc-bg); }
body.wc-view .content-area { margin-top: 0; }
body.wc-view .entry.single-entry,
body.wc-view .entry-content-wrap { background: transparent; box-shadow: none; padding: 0; }

.wc { color: var(--wc-ink); font-variant-numeric: tabular-nums; max-width: 1180px; margin: 0 auto; padding: 8px 0 48px; }
.wc *, .wc *::before, .wc *::after { box-sizing: border-box; }
.wc a { color: var(--wc-accent); text-decoration: none; }
.wc a:hover { text-decoration: underline; }
.wc h2 { font-size: clamp(1.15rem, 1rem + .6vw, 1.5rem); letter-spacing: -.01em; margin: 0 0 16px; font-weight: 700; color: var(--wc-ink); }

/* Breadcrumbs */
.wc-crumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; padding: 0; margin: 8px 0 18px; font-size: .875rem; color: var(--wc-muted); }
.wc-crumbs li + li::before { content: "›"; margin-right: 6px; opacity: .6; }
.wc-crumbs a { color: var(--wc-muted); }

/* Hero */
.wc-hero {
	position: relative; display: grid; grid-template-columns: 1fr auto; gap: 24px 40px; align-items: center;
	background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: calc(var(--wc-radius) + 6px);
	padding: clamp(20px, 3vw, 40px); box-shadow: var(--wc-shadow); overflow: hidden;
}
.wc-hero::after {
	content: ""; position: absolute; inset: auto -20% -60% auto; width: 520px; height: 520px; border-radius: 50%;
	background: radial-gradient(closest-side, var(--wc-accent-soft), transparent); pointer-events: none; opacity: .9;
}
.wc-hero > * { position: relative; z-index: 1; }
.wc-hero--compact { grid-template-columns: 1fr; }
.wc-hero--home { grid-template-columns: 1fr; text-align: center; padding-block: clamp(32px, 6vw, 72px); }
.wc-h1 { display: flex; align-items: center; gap: 14px; font-size: clamp(1.5rem, 1.1rem + 1.8vw, 2.4rem); line-height: 1.15; letter-spacing: -.02em; margin: 0 0 8px; font-weight: 750; color: var(--wc-ink); }
.wc-hero__tz { margin: 0 0 6px; color: var(--wc-muted); font-size: 1rem; }
.wc-you { margin: 0; font-weight: 600; color: var(--wc-accent); min-height: 1.4em; }
.wc-eyebrow { text-transform: uppercase; letter-spacing: .12em; font-size: .75rem; font-weight: 700; color: var(--wc-muted); margin: 0 0 8px; }

/* Flags */
.wc-flag { width: 28px; height: 21px; border-radius: 4px; object-fit: cover; box-shadow: 0 0 0 1px rgba(0,0,0,.08); flex: none; vertical-align: middle; }
.wc-flag--lg { width: 44px; height: 33px; border-radius: 6px; }

/* Clock */
.wc-clock { text-align: right; }
.wc-hero--home .wc-clock { text-align: center; }
.wc-clock__time { font-weight: 800; letter-spacing: -.04em; line-height: 1; white-space: nowrap; }
.wc-clock--xl .wc-clock__time { font-size: clamp(3rem, 2rem + 6vw, 6.5rem); }
.wc-clock--xxl .wc-clock__time { font-size: clamp(3.6rem, 2rem + 9vw, 9rem); }
.wc-clock--md .wc-clock__time { font-size: 2.5rem; }
.wc-clock__sec { font-size: .42em; font-weight: 600; color: var(--wc-muted); margin-left: .08em; vertical-align: .9em; }
.wc-clock__ampm { font-size: .3em; font-weight: 700; color: var(--wc-muted); margin-left: .2em; }
.wc-clock__date { margin-top: 10px; font-size: 1.05rem; color: var(--wc-muted); }
.wc-clock__zone { margin-top: 4px; font-size: .95rem; color: var(--wc-muted); }

.wc-toggle {
	position: absolute; top: 16px; right: 16px; z-index: 2; border: 1px solid var(--wc-line); background: var(--wc-surface);
	color: var(--wc-muted); border-radius: 999px; padding: 4px 12px; font-size: .78rem; cursor: pointer; font-weight: 600;
}
.wc-toggle[aria-pressed="true"] { background: var(--wc-accent); color: var(--wc-accent-ink); border-color: transparent; }

/* Stat cards */
.wc-stats, .wc-sun { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin: 16px 0 0; }
.wc-stat { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: var(--wc-radius); padding: 16px 18px; display: flex; flex-direction: column; gap: 4px; }
.wc-stat__label { font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; color: var(--wc-muted); font-weight: 700; }
.wc-stat__value { font-size: 1.15rem; font-weight: 700; }
.wc-stat__sub { font-size: .85rem; color: var(--wc-muted); }

/* Sections */
.wc-section { margin-top: 40px; }
.wc-prose { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: var(--wc-radius); padding: clamp(18px, 3vw, 32px); line-height: 1.7; }
.wc-prose img { border-radius: 12px; height: auto; }

/* Tables */
.wc-table-wrap { overflow-x: auto; border: 1px solid var(--wc-line); border-radius: var(--wc-radius); background: var(--wc-surface); }
.wc-diff { width: 100%; border-collapse: collapse; margin: 0; font-size: .97rem; }
.wc-diff th, .wc-diff td { text-align: left; padding: 12px 16px; border: 0; border-bottom: 1px solid var(--wc-line); }
.wc-diff tr:last-child td { border-bottom: 0; }
.wc-diff th { font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; color: var(--wc-muted); background: transparent; }
.wc-diff td:nth-child(2) { font-weight: 700; }
.wc-diff td:nth-child(3) { color: var(--wc-muted); }

/* Facts */
.wc-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 0; margin: 0; background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: var(--wc-radius); overflow: hidden; }
.wc-facts > div { padding: 14px 18px; border-bottom: 1px solid var(--wc-line); border-right: 1px solid var(--wc-line); margin-bottom: -1px; margin-right: -1px; }
.wc-facts dt { font-size: .78rem; text-transform: uppercase; letter-spacing: .08em; color: var(--wc-muted); font-weight: 700; margin: 0 0 4px; }
.wc-facts dd { margin: 0; font-weight: 600; }

/* Cards */
.wc-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 10px; }
.wc-card {
	display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 14px 16px;
	background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: 14px; color: var(--wc-ink) !important;
	transition: border-color .15s, transform .15s;
}
a.wc-card:hover { border-color: var(--wc-accent); text-decoration: none !important; transform: translateY(-1px); }
.wc-card__name { display: flex; align-items: center; gap: 10px; font-weight: 600; min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.wc-card__name small { display: block; color: var(--wc-muted); font-weight: 500; margin-left: 6px; }
.wc-card__time { font-weight: 800; font-size: 1.05rem; }

/* Homepage world grid */
.wc-world { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px; }
.wc-world__item {
	display: flex; flex-direction: column; gap: 6px; padding: 16px 18px; border-radius: var(--wc-radius);
	background: var(--wc-surface); border: 1px solid var(--wc-line); color: var(--wc-ink) !important; transition: transform .15s, border-color .15s;
}
.wc-world__item:hover { transform: translateY(-2px); border-color: var(--wc-accent); text-decoration: none !important; }
.wc-world__item.is-night { background: var(--wc-night); border-color: transparent; color: #eef1f7 !important; }
.wc-world__item.is-night .wc-world__meta { color: #9aa3b5; }
.wc-world__top { display: flex; align-items: center; gap: 10px; font-weight: 650; }
.wc-world__time { font-size: 2rem; font-weight: 800; letter-spacing: -.03em; line-height: 1.1; }
.wc-world__meta { font-size: .82rem; color: var(--wc-muted); }

/* Chips */
.wc-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.wc-chip { padding: 8px 14px; border-radius: 999px; background: var(--wc-surface); border: 1px solid var(--wc-line); color: var(--wc-ink) !important; font-weight: 600; font-size: .95rem; }
.wc-chip:hover { border-color: var(--wc-accent); text-decoration: none !important; }

/* Gallery */
.wc-gallery { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-auto-rows: 180px; gap: 10px; }
.wc-gallery__item { display: block; border-radius: 14px; overflow: hidden; background: var(--wc-line); }
.wc-gallery__item:first-child { grid-row: span 2; }
.wc-gallery__item img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
.wc-gallery__item:hover img { transform: scale(1.03); }

/* FAQ */
.wc-faq details { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: 14px; padding: 0 18px; margin-bottom: 8px; }
.wc-faq summary { cursor: pointer; padding: 16px 0; font-weight: 650; list-style: none; display: flex; justify-content: space-between; gap: 12px; }
.wc-faq summary::-webkit-details-marker { display: none; }
.wc-faq summary::after { content: "+"; color: var(--wc-muted); font-weight: 400; font-size: 1.3rem; line-height: 1; }
.wc-faq details[open] summary::after { content: "–"; }
.wc-faq details p { margin: 0 0 16px; color: var(--wc-muted); line-height: 1.6; }

/* Search */
.wc-search { position: relative; max-width: 560px; margin-top: 18px; }
.wc-hero--home .wc-search { margin: 28px auto 0; }
.wc-search input {
	width: 100%; padding: 14px 18px 14px 46px; border-radius: 999px; border: 1px solid var(--wc-line); background: var(--wc-bg);
	color: var(--wc-ink); font-size: 1rem; outline: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%235b6475' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='m13 13 4 4'/%3E%3C/svg%3E");
	background-repeat: no-repeat; background-position: 18px 50%;
}
.wc-search--lg input { padding-block: 18px; font-size: 1.1rem; box-shadow: var(--wc-shadow); }
.wc-search input:focus { border-color: var(--wc-accent); box-shadow: 0 0 0 4px var(--wc-accent-soft); }
.wc-search__results {
	position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 50; list-style: none; margin: 0; padding: 6px;
	background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: 16px; box-shadow: var(--wc-shadow); text-align: left; max-height: 360px; overflow: auto;
}
.wc-search__results li a, .wc-search__results li button {
	display: flex; width: 100%; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 10px; color: var(--wc-ink) !important;
	background: none; border: 0; font: inherit; cursor: pointer; text-align: left;
}
.wc-search__results li a:hover, .wc-search__results li button:hover, .wc-search__results li .is-active { background: var(--wc-accent-soft); text-decoration: none !important; }
.wc-search__results small { color: var(--wc-muted); margin-left: auto; }

/* Converter */
.wc-lead { color: var(--wc-muted); font-size: 1.05rem; }
.wc-converter__base { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin: 16px 0; }
.wc-converter__base select, .wc-converter__base input {
	padding: 10px 14px; border-radius: 12px; border: 1px solid var(--wc-line); background: var(--wc-surface); color: var(--wc-ink); font: inherit;
}
.wc-converter__rows { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.wc-converter__rows li {
	display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 16px; padding: 14px 18px;
	background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: 14px;
}
.wc-converter__rows .t { font-weight: 800; font-size: 1.3rem; }
.wc-converter__rows .d { color: var(--wc-muted); font-size: .9rem; }
.wc-converter__rows button { border: 0; background: none; color: var(--wc-muted); cursor: pointer; font-size: 1.2rem; }

@media (max-width: 760px) {
	.wc-hero { grid-template-columns: 1fr; }
	.wc-clock { text-align: left; }
	.wc-toggle { top: 12px; right: 12px; }
	.wc-h1 { padding-right: 70px; }
	.wc-gallery { grid-template-columns: 1fr 1fr; grid-auto-rows: 140px; }
	.wc-gallery__item:first-child { grid-column: span 2; grid-row: span 1; }
	.wc-converter__rows li { grid-template-columns: 1fr auto; }
	.wc-converter__rows .d { grid-column: 1 / -1; }
}

/* =====================================================================
   Site-wide design (WorldClock 2026 on Kadence)
   Kadence reads its colours/fonts from these custom properties.
   ===================================================================== */
:root {
	--global-palette1: #2f5bff;
	--global-palette2: #1f44d6;
	--global-palette3: #0d1321;
	--global-palette4: #1f2737;
	--global-palette5: #3b4457;
	--global-palette6: #5b6475;
	--global-palette7: #e3e6ec;
	--global-palette8: #f6f7f9;
	--global-palette9: #ffffff;
	--global-body-font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--global-heading-font-family: "Inter Tight", "Inter", system-ui, sans-serif;
	--global-content-width: 1180px;
}
body { font-family: var(--global-body-font-family); background: var(--wc-bg); color: var(--wc-ink); -webkit-font-smoothing: antialiased; }
h1, h2, h3, h4, .wc-h1, .site-title { font-family: var(--global-heading-font-family); letter-spacing: -.015em; }

/* Header */
#masthead, .site-header { background: color-mix(in srgb, var(--wc-surface) 88%, transparent); backdrop-filter: saturate(1.4) blur(10px); border-bottom: 1px solid var(--wc-line); }
#masthead .site-header-row-container-inner { background: transparent; }
.site-branding .site-title { font-weight: 800; font-size: 1.3rem; color: var(--wc-ink); display: inline-flex; align-items: center; gap: 10px; }
.site-branding .site-title::before {
	content: ""; width: 28px; height: 28px; border-radius: 50%; flex: none;
	background:
		linear-gradient(var(--wc-accent-ink), var(--wc-accent-ink)) 13px 6px / 2px 9px no-repeat,
		linear-gradient(var(--wc-accent-ink), var(--wc-accent-ink)) 13px 13px / 8px 2px no-repeat,
		var(--wc-accent);
}
.site-branding .site-description { display: none; }
.main-navigation .primary-menu-container > ul > li.menu-item > a { font-weight: 600; color: var(--wc-ink); padding-inline: .9em; }
.main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a { color: var(--wc-accent); }
.header-navigation .header-menu-container ul ul.sub-menu { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: 14px; box-shadow: var(--wc-shadow); padding: 6px; }
.header-navigation .header-menu-container ul ul li.menu-item > a { color: var(--wc-ink); border-radius: 10px; }
.header-navigation .header-menu-container ul ul li.menu-item > a:hover { background: var(--wc-accent-soft); color: var(--wc-ink); }

/* Content */
.content-bg, .entry.single-entry { background: transparent; }
.entry-content { line-height: 1.7; }
body:not(.wc-view) .entry.single-entry { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: var(--wc-radius); box-shadow: none; }
.entry-content a { color: var(--wc-accent); }
.entry-content img { border-radius: 12px; }

/* Footer */
#colophon, .site-footer { background: #0d1321; color: #9aa3b5; }
#colophon a, .site-footer a { color: #eef1f7; }
#colophon .site-footer-row-container-inner { background: transparent; }
.footer-navigation .footer-menu-container > ul > li > a { color: #eef1f7; font-weight: 500; }

@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		--global-palette3: #eef1f7; --global-palette4: #d6dbe6; --global-palette5: #b4bccb; --global-palette6: #9aa3b5;
		--global-palette7: #232b3e; --global-palette8: #0b0f19; --global-palette9: #121828;
	}
	:root:not([data-theme="light"]) body { background: var(--wc-bg); color: var(--wc-ink); }
}

/* =====================================================================
   Colour & features (2026)
   ===================================================================== */
:root {
	--wc-accent: #4b4dff;
	--wc-accent-2: #ff4fa3;
	--wc-accent-3: #00c2ff;
	--wc-accent-soft: #ecebff;
	--wc-ocean-1: #dff1ff;
	--wc-ocean-2: #cfe6ff;
	--wc-land: #ffffff;
	--sky-dawn: linear-gradient(135deg, #ffb07a 0%, #ff5f8f 52%, #7a5cff 100%);
	--sky-day: linear-gradient(135deg, #2f7bff 0%, #12b7ff 55%, #22d3a6 100%);
	--sky-dusk: linear-gradient(135deg, #ff8a4c 0%, #f2477e 45%, #5b2bd9 100%);
	--sky-night: linear-gradient(135deg, #0a0f2e 0%, #1b1d5c 55%, #3a2378 100%);
	--global-palette1: #4b4dff;
	--global-palette2: #3537e0;
}
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) { --wc-ocean-1: #0f1733; --wc-ocean-2: #0b1229; --wc-land: #24305a; --wc-accent-soft: #23255a; }
}

/* Sky heroes */
.wc-hero[data-sky], .wc-world__item[data-sky] { color: #fff; border-color: transparent; transition: background .6s; }
.wc-hero[data-sky="dawn"], .wc-world__item[data-sky="dawn"] { background: var(--sky-dawn); }
.wc-hero[data-sky="day"], .wc-world__item[data-sky="day"] { background: var(--sky-day); }
.wc-hero[data-sky="dusk"], .wc-world__item[data-sky="dusk"] { background: var(--sky-dusk); }
.wc-hero[data-sky="night"], .wc-world__item[data-sky="night"] { background: var(--sky-night); }
.wc-hero[data-sky="night"]::before, .wc-world__item[data-sky="night"]::before {
	content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .55;
	background-image: radial-gradient(1.2px 1.2px at 12% 22%, #fff, transparent), radial-gradient(1px 1px at 32% 68%, #fff, transparent), radial-gradient(1.4px 1.4px at 58% 18%, #fff, transparent), radial-gradient(1px 1px at 72% 52%, #fff, transparent), radial-gradient(1.2px 1.2px at 88% 30%, #fff, transparent), radial-gradient(1px 1px at 46% 84%, #fff, transparent);
}
.wc-hero[data-sky]::after { background: radial-gradient(closest-side, rgba(255,255,255,.18), transparent); }
.wc-hero[data-sky] .wc-h1, .wc-hero[data-sky] .wc-clock__time { color: #fff; }
.wc-hero[data-sky] .wc-hero__tz, .wc-hero[data-sky] .wc-clock__date, .wc-hero[data-sky] .wc-clock__sec, .wc-hero[data-sky] .wc-clock__ampm { color: rgba(255,255,255,.85); }
.wc-hero[data-sky] .wc-you { color: #fff; background: rgba(255,255,255,.16); display: inline-block; padding: 6px 12px; border-radius: 999px; backdrop-filter: blur(6px); }
/* Reserve the pill's space before the script fills it in (avoids a layout shift). */
.wc-hero[data-sky] .wc-you:empty { visibility: hidden; }
.wc-hero[data-sky] .wc-you { min-height: calc(1.4em + 12px); box-sizing: border-box; }
.wc-hero[data-sky] .wc-toggle { background: rgba(255,255,255,.18); color: #fff; border-color: rgba(255,255,255,.3); }
.wc-hero[data-sky] .wc-flag--lg { box-shadow: 0 0 0 2px rgba(255,255,255,.6); }
.wc-world__item { position: relative; overflow: hidden; }
.wc-world__item[data-sky] .wc-world__meta { color: rgba(255,255,255,.82); }
.wc-world__item[data-sky]:hover { border-color: transparent; transform: translateY(-3px); box-shadow: 0 12px 30px rgba(20, 20, 60, .25); }
.wc-world__item > * { position: relative; }

/* Homepage hero: aurora */
.wc-hero--home { color: #fff; border: 0; background: radial-gradient(120% 140% at 0% 0%, #ff5f8f 0%, transparent 45%), radial-gradient(120% 140% at 100% 0%, #12b7ff 0%, transparent 50%), radial-gradient(140% 120% at 50% 100%, #7a5cff 0%, transparent 60%), #1b1d5c; }
.wc-hero--home .wc-eyebrow, .wc-hero--home .wc-clock__date, .wc-hero--home .wc-clock__zone, .wc-hero--home .wc-clock__sec { color: rgba(255,255,255,.85); }
.wc-hero--home .wc-clock__time { color: #fff; text-shadow: 0 6px 40px rgba(0,0,0,.25); }
.wc-hero--home .wc-search input { background-color: rgba(255,255,255,.96); color: #0d1321; border-color: transparent; }
.wc-hero--home .wc-toggle { background: rgba(255,255,255,.18); color: #fff; border-color: rgba(255,255,255,.3); }
.wc-hero--blog { background: linear-gradient(135deg, #4b4dff, #ff4fa3); color: #fff; border: 0; }
.wc-hero--blog .wc-h1, .wc-hero--blog .wc-eyebrow, .wc-hero--blog .wc-lead { color: #fff; }

/* Colourful accents */
.wc h2 { display: flex; align-items: center; gap: 10px; }
.wc h2::before { content: ""; width: 10px; height: 22px; border-radius: 4px; background: linear-gradient(180deg, var(--wc-accent), var(--wc-accent-2)); flex: none; }
.wc-stat:nth-child(3n+1) { border-top: 3px solid var(--wc-accent); }
.wc-stat:nth-child(3n+2) { border-top: 3px solid var(--wc-accent-3); }
.wc-stat:nth-child(3n+3) { border-top: 3px solid var(--wc-accent-2); }
.wc-chip:hover { background: var(--wc-accent); color: #fff !important; }
.wc-card:hover .wc-card__time { color: var(--wc-accent); }
.wc-card__name > span { display: flex; flex-direction: column; min-width: 0; }
.wc-section__head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.wc-section__head a { font-weight: 700; }

/* Map */
.wc-map { margin: 0; border-radius: calc(var(--wc-radius) + 4px); overflow: hidden; border: 1px solid var(--wc-line); background: var(--wc-surface); box-shadow: var(--wc-shadow); }
.wc-map svg { display: block; width: 100%; height: auto; }
.wc-map__land { fill: var(--wc-land); stroke: rgba(75, 77, 255, .25); stroke-width: .6; }
.wc-map__night { fill: rgba(10, 15, 46, .55); }
.wc-map__sun { fill: #ffc533; stroke: #fff; stroke-width: 3; filter: drop-shadow(0 0 10px rgba(255, 197, 51, .9)); }
.wc-map__pin circle { fill: var(--wc-accent-2); stroke: #fff; stroke-width: 1.5; }
.wc-map__pin.is-hi circle { fill: var(--wc-accent); stroke-width: 3; }
.wc-map__pin text { font: 700 11px/1 var(--global-body-font-family); fill: #0d1321; paint-order: stroke; stroke: rgba(255,255,255,.9); stroke-width: 3px; }
.wc-map__pin.is-hi text { font-size: 14px; }
.wc-map__pin:hover circle { fill: var(--wc-accent); }
.wc-map figcaption { padding: 10px 16px; font-size: .85rem; color: var(--wc-muted); border-top: 1px solid var(--wc-line); }
@media (max-width: 760px) { .wc-map__pin:not(.is-hi) text { display: none; } }

/* Planner */
.wc-planner { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: var(--wc-radius); padding: 16px; overflow-x: auto; }
.wc-planner__row { display: grid; grid-template-columns: 120px 1fr; align-items: center; gap: 10px; margin-bottom: 6px; min-width: 760px; }
.wc-planner__label { font-weight: 700; font-size: .9rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wc-planner__hours { display: grid; grid-template-columns: repeat(24, 1fr); gap: 3px; }
.wc-planner__hours .h { text-align: center; font-size: .72rem; font-weight: 600; padding: 8px 0; border-radius: 6px; background: var(--wc-bg); color: var(--wc-muted); }
.wc-planner__hours .h.is-sleep { background: #e7e8f6; color: #4d5276; }
.wc-planner__hours .h.is-work { background: #e6f0ff; color: #2e4fb8; }
.wc-planner__hours .h.is-both { background: linear-gradient(180deg, #2ad4a6, #12b38a); color: #fff; }
.wc-planner__hours .h.is-now { outline: 2px solid var(--wc-accent-2); outline-offset: 1px; }
.wc-planner__tip { margin: 10px 0 0; color: var(--wc-muted); font-size: .9rem; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .wc-planner__hours .h.is-sleep { background: #1a1f3a; } :root:not([data-theme="light"]) .wc-planner__hours .h.is-work { background: #1d2a5a; color: #b9c8ff; } }

/* Articles */
.wc-articles { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 14px; }
.wc-articles--flags { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.wc-article { display: flex; flex-direction: column; background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: var(--wc-radius); overflow: hidden; color: var(--wc-ink) !important; transition: transform .15s, box-shadow .15s; }
.wc-article:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(20,20,60,.12); text-decoration: none !important; }
.wc-article__img, .wc-article__ph { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.wc-article--timezones .wc-article__ph { background: var(--sky-day); }
.wc-article--flags .wc-article__ph { background: conic-gradient(from 200deg at 30% 60%, #ff4fa3, #ffb33a, #22d3a6, #12b7ff, #4b4dff, #ff4fa3); }
.wc-article--post .wc-article__ph { background: var(--sky-dusk); }
.wc-article__body { padding: 14px 16px 18px; display: flex; flex-direction: column; gap: 6px; }
.wc-article__kicker { font-size: .72rem; text-transform: uppercase; letter-spacing: .1em; font-weight: 800; color: var(--wc-accent); }
.wc-article__ex { color: var(--wc-muted); font-size: .9rem; line-height: 1.5; }
.wc-article-page { max-width: 860px; }
.wc-article-page .wc-prose { font-size: 1.07rem; }
.wc-readtime { color: var(--wc-muted); font-size: .9rem; margin: -8px 0 16px; }
body.single:not(.wc-view) .entry-header .entry-title, body.page:not(.wc-view) .entry-header .entry-title { font-size: clamp(1.8rem, 1.3rem + 2vw, 2.8rem); letter-spacing: -.02em; }

/* Footer link block */
.wc-footlinks { background: linear-gradient(180deg, #121633, #0d1321); color: #b9c0d4; padding: 48px 16px 32px; }
.wc-footlinks__inner { max-width: 1180px; margin: 0 auto; display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 32px; }
.wc-footlinks h3 { color: #fff; font-size: 1rem; margin: 0 0 14px; }
.wc-footlinks ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.wc-footlinks__grid { grid-template-columns: repeat(3, 1fr); }
.wc-footlinks a { color: #d9deec; font-size: .92rem; text-decoration: none; }
.wc-footlinks a:hover { color: #fff; text-decoration: underline; }
@media (max-width: 860px) { .wc-footlinks__inner { grid-template-columns: 1fr; } .wc-footlinks__grid { grid-template-columns: repeat(2, 1fr); } }
.wc-world__item[data-sky], .wc-world__item[data-sky] .wc-world__name, .wc-world__item[data-sky] .wc-world__time { color: #fff !important; }
.wc-world__item[data-sky] .wc-flag { box-shadow: 0 0 0 1.5px rgba(255,255,255,.7); }
.wc-map__night { fill: rgba(10, 15, 46, .42); }
.wc-hero[data-sky] .wc-clock__ampm, .wc-hero--home .wc-clock__ampm { color: rgba(255,255,255,.85); }
/* Language switcher */
.wc-lang-switch > a { display: inline-flex !important; align-items: center; gap: 6px; font-weight: 700; border: 1px solid var(--wc-line); border-radius: 999px; padding: .35em .8em !important; margin-left: .4em; }
.wc-lang-switch > a:hover { border-color: var(--wc-accent); }
.wc-lang-globe { font-size: 1rem; line-height: 1; }
.wc-lang-item > a { display: flex !important; align-items: center; gap: 10px; }
.wc-lang-item.current-menu-item > a { font-weight: 800; color: var(--wc-accent) !important; }
.mobile-navigation .wc-lang-switch > a { margin: 8px 0; }
/* Mobile: show languages as a 2×2 grid of flag buttons instead of a dropdown */
.mobile-navigation .wc-lang-switch > a { display: none !important; }
.mobile-navigation .wc-lang-switch > .sub-menu { display: grid !important; grid-template-columns: 1fr 1fr; gap: 8px; padding: 12px 0 !important; margin: 0 !important; position: static !important; opacity: 1 !important; visibility: visible !important; transform: none !important; background: transparent !important; border: 0 !important; box-shadow: none !important; }
.mobile-navigation .wc-lang-item > a { border: 1px solid rgba(255,255,255,.18) !important; border-radius: 12px; padding: 10px 12px !important; color: #fff !important; }
.mobile-navigation .wc-lang-item.current-menu-item > a { background: var(--wc-accent) !important; border-color: transparent !important; }
.header-navigation .wc-lang-item.current-menu-item > a { background: var(--wc-accent-soft) !important; color: var(--wc-ink) !important; }

/* Weather + photos duo */
.wc-duo { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; align-items: start; }
.wc-duo--single { grid-template-columns: 1fr; }
.wc-duo h2 { margin-bottom: 12px; }
.wc-weather { background: linear-gradient(160deg, #1d2a6b 0%, #3a3fd6 55%, #12b7ff 120%); color: #fff; border-radius: calc(var(--wc-radius) + 4px); padding: 18px 20px; box-shadow: var(--wc-shadow); }
.wc-weather h2, .wc-weather .wc-weather__head h2 { color: #fff; margin: 0; }
.wc-weather h2::before { background: linear-gradient(180deg, #ffd166, #ff4fa3); }
.wc-weather__head { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 10px; }
.wc-toggle--inline { position: static; background: rgba(255,255,255,.16); color: #fff; border-color: rgba(255,255,255,.3); }
.wc-weather__now { display: grid; grid-template-columns: auto auto 1fr; align-items: center; gap: 14px; margin: 6px 0 14px; }
.wc-weather__icon { font-size: 3.4rem; line-height: 1; filter: drop-shadow(0 6px 14px rgba(0,0,0,.25)); }
.wc-weather__temp { font-size: 3.6rem; font-weight: 800; letter-spacing: -.04em; line-height: 1; }
.wc-weather__cond { font-weight: 700; font-size: 1.1rem; display: flex; flex-direction: column; gap: 4px; }
.wc-weather__cond small { font-weight: 500; font-size: .85rem; opacity: .85; }
.wc-weather__hours, .wc-weather__days { list-style: none; margin: 0; padding: 0; display: grid; gap: 6px; }
.wc-weather__hours { grid-template-columns: repeat(6, 1fr); margin-bottom: 10px; }
.wc-weather__days { grid-template-columns: repeat(4, 1fr); }
.wc-weather__hours li, .wc-weather__days li { background: rgba(255,255,255,.12); border-radius: 12px; padding: 8px 4px; text-align: center; display: flex; flex-direction: column; gap: 3px; font-size: .82rem; }
.wc-weather__hours .i, .wc-weather__days .i { font-size: 1.4rem; }
.wc-weather__hours .v, .wc-weather__days .v { font-weight: 700; font-size: .95rem; }
.wc-weather__hours .p { font-size: .72rem; opacity: .8; min-height: 1em; }
.wc-weather__days .v { font-weight: 500; opacity: .9; }
.wc-weather__days .v b { font-weight: 800; opacity: 1; }
.wc-weather__foot { margin: 12px 0 0; font-size: .78rem; opacity: .8; }
.wc-weather__foot a { color: #fff !important; text-decoration: underline; }
.wc-weather__loading { height: 220px; border-radius: 12px; background: linear-gradient(90deg, rgba(255,255,255,.08), rgba(255,255,255,.18), rgba(255,255,255,.08)); background-size: 200% 100%; animation: wcShimmer 1.4s infinite; }
@keyframes wcShimmer { to { background-position: -200% 0; } }
.wc-weather__na { opacity: .85; }
.wc-photos { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: calc(var(--wc-radius) + 4px); padding: 18px 20px; }
.wc-gallery--duo { grid-template-columns: 1fr 1fr; grid-auto-rows: 150px; }
.wc-gallery--duo .wc-gallery__item:first-child { grid-column: span 2; grid-row: span 2; }

/* Google map */
.wc-gmap { border-radius: calc(var(--wc-radius) + 4px); overflow: hidden; border: 1px solid var(--wc-line); box-shadow: var(--wc-shadow); aspect-ratio: 16 / 7; background: var(--wc-ocean-1); }
.wc-gmap iframe { width: 100%; height: 100%; border: 0; display: block; }
.wc-about { font-size: 1.05rem; }
.wc-about h2 { margin-top: 0; }
@media (min-width: 900px) { .wc-about > p { columns: 2; column-gap: 40px; } }
@media (max-width: 860px) {
	.wc-duo { grid-template-columns: 1fr; }
	.wc-weather__hours { grid-template-columns: repeat(3, 1fr); }
	.wc-gmap { aspect-ratio: 4 / 3; }
}
/* Long dropdowns (Flags, Time Zones) scroll instead of running off-screen */
.header-navigation .header-menu-container ul ul.sub-menu { max-height: 70vh; overflow-y: auto; min-width: 280px; }

/* =====================================================================
   Tighter spacing everywhere (desktop + mobile)
   ===================================================================== */
.content-area { margin-top: 18px !important; margin-bottom: 28px !important; }
.wc-view .content-area { margin-top: 10px !important; }
.site-container, .content-container.site-container { padding-left: 20px; padding-right: 20px; }
.entry-content-wrap { padding: 24px 28px !important; }
.wc-view .entry-content-wrap { padding: 0 !important; }
.entry-header { margin-bottom: 12px; }
.entry-content > *:first-child { margin-top: 0; }
.wc { padding: 0 0 20px; }
.wc-section { margin-top: 28px; }
.wc h2 { margin-bottom: 12px; }
.wc-crumbs ol { margin: 4px 0 10px; }
.wc-hero { padding: clamp(16px, 2.4vw, 32px); }
.wc-hero--home { padding-block: clamp(24px, 4vw, 48px); }
.wc-stats, .wc-sun { margin-top: 10px; gap: 10px; }
.wc-stat { padding: 12px 14px; }
.wc-footlinks { padding: 36px 20px 24px; }
@media (max-width: 760px) {
	.site-container, .content-container.site-container { padding-left: 12px; padding-right: 12px; }
	.content-area { margin-top: 10px !important; margin-bottom: 18px !important; }
	.entry-content-wrap { padding: 16px !important; }
	.wc-section { margin-top: 22px; }
	.wc-hero { padding: 16px; border-radius: 18px; gap: 12px; }
	.wc-clock__date { margin-top: 6px; }
	.wc-stats, .wc-sun { grid-template-columns: 1fr 1fr; gap: 8px; }
	.wc-stat { padding: 10px 12px; }
	.wc-stat__value { font-size: 1rem; }
	.wc-weather, .wc-photos { padding: 14px; }
	.wc-planner { padding: 10px; }
	.wc-diff th, .wc-diff td { padding: 10px 12px; }
}
.wc-weather ul, .wc-weather__hours, .wc-weather__days { padding-left: 0 !important; margin-left: 0 !important; }
/* HTML sitemap */
.wc-sitemap__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.wc-sitemap__country { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: 14px; padding: 12px 14px; }
.wc-sitemap__c { font-weight: 800; }
.wc-sitemap__country ul { list-style: none; margin: 6px 0 0; padding: 0; font-size: .9rem; columns: 2; }

/* =====================================================================
   Articles & blog posts – magazine layout
   ===================================================================== */
.wc-article-page { max-width: 1180px; }
.wc-ahero {
	position: relative; overflow: hidden; display: grid; grid-template-columns: 1fr auto; gap: 28px; align-items: center;
	border-radius: calc(var(--wc-radius) + 8px); padding: clamp(20px, 3.5vw, 44px); color: #fff;
	background: radial-gradient(120% 140% at 0% 0%, #ff5f8f 0%, transparent 45%), radial-gradient(120% 140% at 100% 100%, #12b7ff 0%, transparent 50%), #2b2d8f;
}
.wc-article-page--timezones .wc-ahero { background: radial-gradient(120% 140% at 0% 0%, #22d3a6 0%, transparent 45%), radial-gradient(120% 140% at 100% 100%, #4b4dff 0%, transparent 55%), #10226b; }
.wc-article-page--flags .wc-ahero { background: radial-gradient(120% 140% at 0% 0%, #ffb33a 0%, transparent 42%), radial-gradient(120% 140% at 100% 100%, #ff4fa3 0%, transparent 52%), #3a1d6e; }
.wc-ahero .wc-crumbs ol { margin-top: 0; }
.wc-ahero .wc-crumbs a, .wc-ahero .wc-crumbs li { color: rgba(255,255,255,.8); }
.wc-ahero .wc-eyebrow { color: rgba(255,255,255,.85); margin-top: 6px; }
.wc-ahero__title { color: #fff; font-size: clamp(1.8rem, 1.2rem + 2.6vw, 3.1rem); line-height: 1.08; letter-spacing: -.025em; margin: 6px 0 12px; font-weight: 800; max-width: 22ch; }
.wc-ahero__meta { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
.wc-ahero__meta span { background: rgba(255,255,255,.16); border-radius: 999px; padding: 5px 12px; font-size: .85rem; font-weight: 600; backdrop-filter: blur(6px); }
.wc-ahero__art { text-align: center; }
.wc-ahero__art--flag img { width: min(300px, 34vw); height: auto; border-radius: 14px; box-shadow: 0 18px 40px rgba(0,0,0,.35), 0 0 0 4px rgba(255,255,255,.25); transform: rotate(-3deg); }
.wc-ahero__art--img img { width: min(360px, 38vw); height: auto; border-radius: 16px; box-shadow: 0 18px 40px rgba(0,0,0,.35); }
.wc-ahero .wc-clock { text-align: center; }
.wc-ahero .wc-clock__time { color: #fff; font-size: clamp(2.6rem, 1.6rem + 3vw, 4.4rem); }
.wc-ahero .wc-clock__date, .wc-ahero .wc-clock__sec, .wc-ahero .wc-clock__ampm, .wc-ahero__tz { color: rgba(255,255,255,.85); }
.wc-ahero__tz { margin: 6px 0 0; font-weight: 600; font-size: .9rem; }

.wc-alayout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 36px; margin-top: 28px; align-items: start; }
.wc-alayout--single { grid-template-columns: minmax(0, 760px); justify-content: center; }
.wc-aprose { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: calc(var(--wc-radius) + 4px); padding: clamp(20px, 3.5vw, 48px); font-size: 1.1rem; line-height: 1.8; color: var(--wc-ink); min-width: 0; }
.wc-aprose > *:first-child { margin-top: 0; }
.wc-aprose > p:first-of-type { font-size: 1.22rem; line-height: 1.7; color: var(--wc-ink); }
.wc-aprose h2 { font-size: clamp(1.35rem, 1.1rem + .9vw, 1.75rem); margin: 2.2em 0 .6em; scroll-margin-top: 90px; }
.wc-aprose h3 { font-size: 1.2rem; margin: 1.8em 0 .5em; }
.wc-aprose p, .wc-aprose ul, .wc-aprose ol { margin: 0 0 1.1em; }
.wc-aprose ul li::marker { color: var(--wc-accent); }
.wc-aprose img { border-radius: 14px; height: auto; max-width: 100%; }
.wc-aprose figure { margin: 1.6em 0; }
.wc-aprose blockquote { margin: 1.6em 0; padding: 14px 20px; border-left: 4px solid var(--wc-accent); background: var(--wc-accent-soft); border-radius: 0 12px 12px 0; }
.wc-aprose table { width: 100%; border-collapse: collapse; font-size: .95rem; margin: 1.4em 0; }
.wc-aprose th, .wc-aprose td { border-bottom: 1px solid var(--wc-line); padding: 10px 12px; text-align: left; }
.wc-aprose a { color: var(--wc-accent); text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--wc-accent) 35%, transparent); text-underline-offset: 3px; }
.wc-aprose a:hover { text-decoration-color: currentColor; }

.wc-aside__sticky { position: sticky; top: 90px; display: grid; gap: 14px; }
.wc-toc { background: var(--wc-surface); border: 1px solid var(--wc-line); border-radius: var(--wc-radius); padding: 16px 18px; }
.wc-toc__title { font-size: .75rem; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; color: var(--wc-muted); margin: 0 0 10px; }
.wc-toc ol { margin: 0; padding: 0; list-style: none; counter-reset: toc; display: grid; gap: 4px; }
.wc-toc li { counter-increment: toc; }
.wc-toc a { display: grid; grid-template-columns: 26px 1fr; gap: 6px; padding: 6px 8px; border-radius: 10px; color: var(--wc-ink) !important; font-size: .92rem; line-height: 1.35; text-decoration: none !important; }
.wc-toc a::before { content: counter(toc); font-weight: 800; color: var(--wc-accent); }
.wc-toc a:hover, .wc-toc a.is-active { background: var(--wc-accent-soft); }
.wc-acard { position: relative; overflow: hidden; display: grid; gap: 6px; padding: 16px 18px; border-radius: var(--wc-radius); color: #fff !important; text-decoration: none !important; background: var(--sky-day); }
.wc-acard__top { display: flex; align-items: center; gap: 10px; font-weight: 700; }
.wc-acard__time { font-size: 2.2rem; font-weight: 800; letter-spacing: -.03em; line-height: 1; }
.wc-acard__more { font-size: .85rem; font-weight: 700; opacity: .9; }
.wc-acard[data-sky="night"] { background: var(--sky-night); }
.wc-acard[data-sky="dawn"] { background: var(--sky-dawn); }
.wc-acard[data-sky="dusk"] { background: var(--sky-dusk); }

@media (max-width: 960px) {
	.wc-alayout { grid-template-columns: 1fr; gap: 18px; }
	.wc-aside { order: -1; }
	.wc-aside__sticky { position: static; }
	.wc-toc ol { max-height: none; }
}
@media (max-width: 760px) {
	.wc-ahero { grid-template-columns: 1fr; gap: 16px; padding: 20px 16px; border-radius: 20px; }
	.wc-ahero__art--flag img { width: 160px; transform: rotate(-2deg); }
	.wc-aprose { padding: 18px 16px; font-size: 1.03rem; }
	.wc-aprose > p:first-of-type { font-size: 1.1rem; }
}

/* Homepage H1 */
.wc-home-h1 { font-family: "Inter Tight", Inter, system-ui, sans-serif; font-size: clamp(1.5rem, 1.1rem + 1.6vw, 2.4rem); line-height: 1.15; font-weight: 800; letter-spacing: -.02em; margin: 0 0 10px; color: inherit; max-width: 30ch; }

/* =====================================================================
   Interactive time zone map
   ===================================================================== */
.wc-tzmap-page__head { margin: 6px 0 16px; }
.wc-tzmap-page__head .wc-lead { max-width: 70ch; color: var(--wc-muted, #5b6478); margin: 6px 0 0; }
.wc-tzmap { background: #fff; border: 1px solid rgba(20,30,60,.08); border-radius: 22px; box-shadow: 0 10px 30px -18px rgba(20,30,80,.35); padding: 14px; }
.wc-tzmap__stage { position: relative; border-radius: 14px; overflow: hidden; background: #eef2f8; aspect-ratio: 2 / 1; }
.wc-tzmap__canvas, .wc-tzmap__overlay { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.wc-tzmap__canvas { cursor: crosshair; image-rendering: auto; }
.wc-tzmap__overlay { pointer-events: none; }
.wc-tzmap__land { fill: none; stroke: rgba(30,35,55,.45); stroke-width: .5; vector-effect: non-scaling-stroke; }
.wc-tzmap__night { fill: rgba(12,18,48,.38); opacity: 0; transition: opacity .3s; }
.wc-tzmap.show-night .wc-tzmap__night { opacity: 1; }
.wc-tzmap__scale { position: absolute; left: 0; right: 0; top: 0; width: 100%; height: 18px; pointer-events: none; background: linear-gradient(rgba(255,255,255,.85), rgba(255,255,255,.55)); }
.wc-tzmap__scale text { font: 700 9px Inter, system-ui, sans-serif; fill: #29304a; }
.wc-tzmap__loading { position: absolute; inset: 0; display: grid; place-items: center; font-weight: 600; color: #5b6478; }
.wc-tzmap.is-ready .wc-tzmap__loading { display: none; }
.wc-tzmap__tip { position: absolute; z-index: 3; pointer-events: none; min-width: 170px; max-width: 260px; background: rgba(17,22,44,.94); color: #fff; padding: 10px 12px; border-radius: 12px; box-shadow: 0 10px 24px rgba(0,0,0,.25); display: grid; gap: 2px; font-size: .85rem; line-height: 1.3; backdrop-filter: blur(6px); }
.wc-tzmap__tip strong { font-size: .8rem; letter-spacing: .02em; color: #9fd8ff; }
.wc-tzmap__tt { font: 800 1.5rem/1.1 "Inter Tight", Inter, sans-serif; font-variant-numeric: tabular-nums; }
.wc-tzmap__tip em { font-style: normal; color: #ffd27a; font-weight: 600; }
.wc-tzmap__bar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin: 12px 2px 8px; font-size: .9rem; }
.wc-tzmap__bar .wc-chip.is-on { background: #1f6feb; color: #fff; }
.wc-tzmap__switch { display: inline-flex; align-items: center; gap: 6px; cursor: pointer; font-weight: 600; }
.wc-tzmap__hint { color: #5b6478; margin-left: auto; }
.wc-tzmap__strip { display: flex; gap: 6px; overflow-x: auto; padding: 4px 2px 8px; scrollbar-width: thin; }
.wc-tzmap__band { flex: 0 0 auto; min-width: 66px; border: 0; border-top: 5px solid var(--b); border-radius: 10px; background: #f4f6fb; padding: 7px 8px 6px; text-align: center; cursor: pointer; display: grid; gap: 1px; font: inherit; color: #1b2133; transition: transform .15s, background .15s; }
.wc-tzmap__band b { font: 700 .92rem "Inter Tight", Inter, sans-serif; font-variant-numeric: tabular-nums; }
.wc-tzmap__band span { font-size: .72rem; color: #5b6478; }
.wc-tzmap__band:hover, .wc-tzmap__band.is-on { background: var(--b); color: #fff; transform: translateY(-2px); }
.wc-tzmap__band:hover span, .wc-tzmap__band.is-on span { color: rgba(255,255,255,.9); }
.wc-tzmap__band.is-you { outline: 2px solid #1b2133; outline-offset: -2px; }
.wc-tzmap-page .wc-alayout--single { display: block; max-width: 820px; margin: 28px auto 0; }
@media (max-width: 760px) {
	.wc-tzmap { padding: 8px; border-radius: 16px; }
	.wc-tzmap__hint { margin-left: 0; width: 100%; font-size: .82rem; }
	.wc-tzmap__scale text { font-size: 13px; }
}
@media (max-width: 600px) { .wc-tzmap__scale { display: none; } .wc-tzmap__tip { min-width: 140px; padding: 8px 10px; } .wc-tzmap__tt { font-size: 1.2rem; } }
.wc-tzmap__tip[hidden] { display: none; }
.wc-hero--home .wc-home-h1 { text-align: center; margin: 0 auto 12px; max-width: 34ch; font-size: clamp(1.35rem, 1rem + 1.3vw, 2.1rem); }

/* Blog hub: no banner, just a plain heading */
.wc-blog__h1 { font-family: "Inter Tight", Inter, system-ui, sans-serif; font-size: clamp(1.4rem, 1.1rem + 1vw, 1.9rem); font-weight: 800; letter-spacing: -.02em; margin: 14px 0 4px; }
.wc-blog .wc-section:first-of-type { margin-top: 14px; }

/* =====================================================================
   Brand v2 (Oct 2026): midnight · meridian blue · saffron sun
   One idea: the colours of the real sky. Every clock is tinted by the
   local sky at that moment; the brand colours are night, day and sun.
   ===================================================================== */
:root {
	--wc-midnight: #0e1a3a;
	--wc-blue: #1f5eff;
	--wc-saffron: #ffb020;
	--wc-teal: #12a39a;
	--wc-coral: #ff6b57;
	--wc-bg: #f7f9fc;
	--wc-ink: #0e1a3a;
	--wc-muted: #586179;
	--wc-line: #e2e7f0;
	--wc-accent: var(--wc-blue);
	--wc-accent-2: var(--wc-saffron);
	--wc-accent-3: var(--wc-teal);
	--wc-accent-soft: #e8f0ff;
	--wc-night: var(--wc-midnight);
	--sky-dawn: linear-gradient(175deg, #23306b 0%, #6f63bd 42%, #f19a7c 80%, #ffcb7a 100%);
	--sky-day: linear-gradient(175deg, #1f5eff 0%, #3d8bff 50%, #7cc6ff 100%);
	--sky-dusk: linear-gradient(175deg, #1a2456 0%, #5e3a8c 42%, #e2605a 80%, #ffa94d 100%);
	--sky-night: linear-gradient(175deg, #060c22 0%, #0e1a3a 55%, #1c2d68 100%);
	--global-palette1: #1f5eff;
	--global-palette2: #1648cc;
	--global-palette3: #0e1a3a;
	--global-palette4: #1d2a4d;
	--global-palette5: #3c4766;
	--global-palette6: #586179;
	--global-palette7: #e2e7f0;
	--global-palette8: #f7f9fc;
	--global-palette9: #ffffff;
	--global-heading-font-family: "Bricolage Grotesque", "Inter", system-ui, sans-serif;
}
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) { --wc-ink: #eef1f7; --wc-bg: #070c1d; --wc-surface: #0f1833; --wc-line: #1f2a4a; --wc-muted: #9aa5c0; --wc-accent: #6f9bff; --wc-accent-soft: #15214a; }
}
h1, h2, h3, h4, .wc-h1, .site-title, .wc-blog__h1, .wc-home-h1 { font-family: var(--global-heading-font-family); font-optical-sizing: auto; letter-spacing: -.02em; }
.wc-clock__time, .wc-world__time, .wc-tzmap__tt { font-family: "Inter Tight", "Inter", system-ui, sans-serif; }

/* Logo: globe mark + wordmark */
.site-branding .site-title { font-size: 1.32rem; font-weight: 800; color: var(--wc-midnight); gap: 10px; }
.site-branding .site-title::before { width: 34px; height: 34px; border-radius: 0; background: url("brand/mark.svg") center / contain no-repeat; }
.site-branding a.brand:hover .site-title::before { transform: rotate(-12deg); transition: transform .4s ease; }
@media (prefers-reduced-motion: reduce) { .site-branding a.brand:hover .site-title::before { transform: none; } }

/* Header */
#masthead, .site-header { background: rgba(255, 255, 255, .92); border-bottom: 0; }
.main-navigation .primary-menu-container > ul > li.menu-item > a { color: var(--wc-midnight); }
.main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a,
.main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a { color: var(--wc-blue); }
.header-navigation .header-menu-container ul ul li.menu-item > a:hover { background: var(--wc-accent-soft); }

/* Signature: live daylight strip under the header (where on Earth it is day right now) */
.wc-daystrip { position: relative; height: 5px; background: var(--wc-midnight); overflow: visible; }
.wc-daystrip__sun { position: absolute; top: 50%; width: 11px; height: 11px; margin: -5.5px 0 0 -5.5px; border-radius: 50%; background: var(--wc-saffron); box-shadow: 0 0 0 3px rgba(255, 176, 32, .25), 0 0 14px rgba(255, 176, 32, .8); }
.wc-daystrip__you { position: absolute; top: -3px; width: 2px; height: 11px; margin-left: -1px; background: #fff; border-radius: 2px; box-shadow: 0 0 0 1px var(--wc-midnight); }

/* Section headings: a small sun tick */
.wc h2::before { width: 8px; height: 20px; border-radius: 3px; background: var(--wc-saffron); }
.wc-stat:nth-child(3n+1) { border-top-color: var(--wc-blue); }
.wc-stat:nth-child(3n+2) { border-top-color: var(--wc-teal); }
.wc-stat:nth-child(3n+3) { border-top-color: var(--wc-saffron); }

/* Homepage hero follows the visitor's own sky */
.wc-hero--home { background: var(--sky-night); }
.wc-hero--home[data-sky="dawn"] { background: var(--sky-dawn); }
.wc-hero--home[data-sky="day"] { background: var(--sky-day); }
.wc-hero--home[data-sky="dusk"] { background: var(--sky-dusk); }
.wc-hero--home[data-sky="night"] { background: var(--sky-night); }
.wc-hero--home .wc-clock__time { text-shadow: 0 4px 30px rgba(6, 12, 34, .35); }
.wc-hero--home .wc-home-h1 { color: #fff; }
.wc-hero--home .wc-search input:focus { outline: 3px solid var(--wc-saffron); outline-offset: 2px; }
.wc-hero--blog { background: var(--sky-day); }

/* Links, chips, buttons */
.wc a, .entry-content a { color: var(--wc-blue); }
.wc-chip:hover { background: var(--wc-midnight); color: #fff !important; }
.wc-tzmap__bar .wc-chip.is-on { background: var(--wc-midnight); }
:where(.wc, .entry-content) a:focus-visible, .wc button:focus-visible { outline: 3px solid var(--wc-saffron); outline-offset: 2px; border-radius: 6px; }
.button, .wp-block-button__link, button.wpcf7-submit, input[type="submit"] { background: var(--wc-blue); color: #fff; border-radius: 999px; }
.button:hover, .wp-block-button__link:hover, input[type="submit"]:hover { background: var(--wc-midnight); }

/* Ordinary pages and posts (Privacy, Contact, …) */
body:not(.wc-view) .entry.single-entry { border: 0; border-radius: 22px; box-shadow: 0 1px 2px rgba(14, 26, 58, .04), 0 12px 32px rgba(14, 26, 58, .06); }
body:not(.wc-view) .entry-hero .entry-header, body:not(.wc-view) .entry-header .entry-title { color: var(--wc-midnight); }
body:not(.wc-view) .entry-hero-container-inner { background: var(--sky-night); }
body:not(.wc-view) .entry-hero-container-inner .entry-title, body:not(.wc-view) .entry-hero-container-inner .entry-meta, body:not(.wc-view) .entry-hero-container-inner a { color: #fff; }
.entry-content h2 { font-size: clamp(1.3rem, 1.1rem + .8vw, 1.75rem); margin-top: 1.6em; }
.entry-content blockquote { border-left: 4px solid var(--wc-saffron); background: var(--wc-accent-soft); border-radius: 0 14px 14px 0; padding: 14px 18px; }

/* Footer */
#colophon, .site-footer, .wc-footlinks { background: var(--wc-midnight); }
.wc-footlinks { color: #a9b3cc; }
.wc-footlinks a { color: #eef2fb; }
.wc-footlinks a:hover { color: var(--wc-saffron); }
.wc-map__night { fill: rgba(14, 26, 58, .5); }
.wc-map__land { stroke: rgba(31, 94, 255, .22); }
.wc-world__item[data-sky="dawn"], .wc-world__item[data-sky="dusk"], .wc-hero[data-sky="dawn"], .wc-hero[data-sky="dusk"] { text-shadow: 0 1px 2px rgba(14, 26, 58, .35); }
/* Homepage: two tidy rows of 4 (time zones, then flags) */
.wc-home .wc-articles { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 980px) { .wc-home .wc-articles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .wc-home .wc-articles:not(.wc-articles--flags) { grid-template-columns: 1fr; } }
/* Homepage hero: "World Clock" title, where-you-are line, slightly smaller clock */
.wc-hero--home .wc-home-h1 { font-size: clamp(2.2rem, 1.6rem + 2.6vw, 3.6rem); font-weight: 800; max-width: none; margin: 0 auto 6px; text-align: center; letter-spacing: -.03em; }
.wc-home-in { margin: 0 0 6px; text-align: center; font-size: clamp(1rem, .95rem + .3vw, 1.2rem); color: rgba(255, 255, 255, .88); }
.wc-home-in a, .wc-hero--home .wc-clock__zone a { color: #fff; text-decoration: underline; text-decoration-color: rgba(255, 176, 32, .8); text-underline-offset: 3px; text-decoration-thickness: 2px; }
.wc-home-in a:hover, .wc-hero--home .wc-clock__zone a:hover { color: var(--wc-saffron); }
.wc-hero--home .wc-clock--xxl .wc-clock__time { font-size: clamp(3rem, 1.8rem + 7vw, 7.2rem); }
.wc-hero--home .wc-clock__zone { line-height: 1.6; }
.wc-hero--home .wc-home-in { margin-bottom: 14px; }
/* City/country statistics merged directly under the time zone cards */
.wc-facts-merged { margin-top: 10px; }
.wc-facts-merged .wc-facts { grid-template-columns: repeat(4, minmax(0, 1fr)); border-radius: 18px; }
.wc-facts-merged .wc-facts > div { padding: 12px 16px; }
.wc-facts-merged .wc-facts dd { font-size: 1rem; overflow-wrap: anywhere; }
@media (max-width: 900px) { .wc-facts-merged .wc-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Search suggestions must not be clipped by the hero */
.wc-hero--home { overflow: visible; }
.wc-hero--home::after { display: none; }
.wc-hero--home::before { border-radius: inherit; }
.wc-search { position: relative; z-index: 30; }
.wc-search__results { z-index: 40; }

/* =====================================================================
   Footer v2
   ===================================================================== */
.wc-foot { background: var(--wc-midnight); color: #a9b3cc; padding: 56px 20px 28px; border-top: 4px solid var(--wc-saffron); }
.wc-foot__inner { max-width: 1180px; margin: 0 auto; display: grid; grid-template-columns: 1.4fr 1.3fr 1fr .8fr .9fr; gap: 36px; }
.wc-foot h3 { color: #fff; font-family: var(--global-heading-font-family); font-size: 1rem; font-weight: 700; margin: 0 0 14px; letter-spacing: -.01em; }
.wc-foot ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.wc-foot a { color: #dfe5f3; font-size: .93rem; text-decoration: none; }
.wc-foot a:hover { color: var(--wc-saffron); }
.wc-foot__cols { grid-template-columns: 1fr 1fr; column-gap: 18px; }
.wc-foot__cols a { display: inline-flex; align-items: center; gap: 8px; }
.wc-foot__flag { width: 18px !important; height: 13.5px !important; border-radius: 2px; box-shadow: none !important; }
.wc-foot__logo { display: inline-flex; align-items: center; gap: 10px; font-family: var(--global-heading-font-family); font-size: 1.25rem !important; font-weight: 800; color: #fff !important; }
.wc-foot__brand p { margin: 14px 0 0; font-size: .92rem; line-height: 1.6; max-width: 32ch; }
.wc-foot__utc { display: inline-block; padding: 6px 12px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 999px; color: #fff; font-weight: 600; font-variant-numeric: tabular-nums; }
.wc-foot__utc span { color: var(--wc-saffron); margin-left: 4px; }
.wc-foot__langs { display: flex !important; flex-wrap: wrap; gap: 6px 14px !important; margin-top: 16px !important; }
.wc-foot__langs a { font-size: .85rem; color: #a9b3cc; }
.wc-foot__langs a[aria-current] { color: #fff; font-weight: 700; }
@media (max-width: 1024px) { .wc-foot__inner { grid-template-columns: 1fr 1fr; } .wc-foot__brand { grid-column: 1 / -1; } }
@media (max-width: 560px) { .wc-foot__inner { grid-template-columns: 1fr; gap: 28px; } }
.wc-footlinks { display: none; }
#colophon .site-footer-row-container-inner { padding-block: 14px; }
#colophon .footer-html, #colophon .footer-html a { color: #8792ad; font-size: .85rem; }
.wc-foot__inner { grid-template-columns: 1.3fr 1.3fr 1.1fr .9fr .9fr; }
.wc-foot ul b { color: #fff; font-weight: 700; margin-right: 6px; }
.wc-foot ul span { color: #a9b3cc; font-size: .85rem; }
.wc-foot li { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 1024px) { .wc-foot__inner { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .wc-foot__inner { grid-template-columns: 1fr; } }
.wc-foot li { white-space: normal; overflow: visible; }
.wc-foot ul span { display: block; font-size: .8rem; margin-top: 1px; }
/* Visitor's country flag above the homepage title */
.wc-home-flag { display: block; margin: 0 auto 14px; width: clamp(72px, 9vw, 104px); }
.wc-home-flag[hidden] { display: none; }
.wc-home-flag img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 10px; box-shadow: 0 0 0 3px rgba(255, 255, 255, .85), 0 12px 30px rgba(6, 12, 34, .45); animation: wc-flag-in .5s ease-out both; }
@keyframes wc-flag-in { from { opacity: 0; transform: translateY(6px) scale(.96); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .wc-home-flag img { animation: none; } }

/* Hero sky decoration (moon with today's phase, stars, sun) */
.wc-hero { isolation: isolate; }
.wc-hero > .wc-celestial { position: absolute; inset: 0; pointer-events: none; overflow: hidden; border-radius: inherit; z-index: -1; }
.wc-hero[data-sky="night"]::before { display: none; }
.wc-stars { position: absolute; inset: 0; }
.wc-stars--b { animation: wc-twinkle 5s ease-in-out infinite alternate; }
.wc-stars--faint { opacity: .35; }
@keyframes wc-twinkle { from { opacity: .35; } to { opacity: 1; } }
.wc-moon { position: absolute; top: 14%; left: 7%; width: clamp(48px, 6.5vw, 84px); aspect-ratio: 1; filter: drop-shadow(0 0 18px rgba(246, 241, 216, .55)); }
.wc-moon svg { display: block; width: 100%; height: 100%; }
.wc-hero:not(.wc-hero--home) .wc-moon { left: auto; right: 36%; top: 12%; width: clamp(40px, 5vw, 64px); }
.wc-csun { position: absolute; top: -60px; right: 10%; width: 180px; height: 180px; border-radius: 50%; background: radial-gradient(circle, #fff7d6 0 18%, rgba(255, 210, 90, .75) 26%, rgba(255, 190, 60, .22) 46%, transparent 70%); }
.wc-csun--low { top: auto; bottom: -110px; right: auto; left: 12%; width: 260px; height: 260px; background: radial-gradient(circle, #fff1c2 0 14%, rgba(255, 170, 70, .7) 24%, rgba(255, 120, 60, .25) 46%, transparent 70%); }
@media (max-width: 760px) { .wc-moon { top: 10px; left: 12px; } .wc-hero:not(.wc-hero--home) .wc-moon { right: 14px; left: auto; top: 54px; } .wc-csun { width: 130px; height: 130px; top: -45px; } }
@media (prefers-reduced-motion: reduce) { .wc-stars--b { animation: none; } }

/* Cartoon sky v2: big moon with real phase, sparkle stars, rayed sun, clouds */
.wc-moon { top: 8%; left: 5%; width: clamp(110px, 13vw, 190px); filter: drop-shadow(0 0 26px rgba(255, 243, 196, .35)); animation: wc-float 9s ease-in-out infinite; }
.wc-hero:not(.wc-hero--home) .wc-moon { right: 33%; left: auto; top: 6%; width: clamp(90px, 9.5vw, 140px); }
.wc-spark { position: absolute; transform: translate(-50%, -50%); filter: drop-shadow(0 0 6px rgba(255, 248, 216, .9)); animation: wc-sparkle 3.6s ease-in-out infinite; }
@keyframes wc-sparkle { 0%, 100% { opacity: .55; transform: translate(-50%, -50%) scale(.75) rotate(0); } 50% { opacity: 1; transform: translate(-50%, -50%) scale(1.1) rotate(20deg); } }
@keyframes wc-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
.wc-csun { top: -38px; right: 6%; width: clamp(150px, 15vw, 220px); height: auto; aspect-ratio: 1; background: none; border-radius: 0; }
.wc-csun svg { display: block; width: 100%; height: 100%; }
.wc-csun .wc-csun__rays { transform-origin: 0 0; animation: wc-spin 60s linear infinite; }
@keyframes wc-spin { to { transform: rotate(360deg); } }
.wc-csun--low { top: auto; bottom: -26%; left: 8%; right: auto; width: clamp(170px, 18vw, 250px); height: auto; background: none; }
.wc-hero:not(.wc-hero--home) .wc-csun { right: 30%; }
.wc-cloud { position: absolute; width: clamp(90px, 10vw, 150px); opacity: .95; animation: wc-drift 40s linear infinite alternate; }
.wc-cloud svg { display: block; width: 100%; height: auto; }
.wc-cloud--a { top: 22%; left: 6%; }
.wc-cloud--b { top: 58%; right: 4%; width: clamp(70px, 7vw, 110px); animation-duration: 55s; }
.wc-cloud--warm svg path { fill: #ffe3cf; stroke: #ffc9a8; }
.wc-hero[data-sky="dusk"] .wc-cloud--a, .wc-hero[data-sky="dawn"] .wc-cloud--a { top: 18%; left: auto; right: 8%; }
@keyframes wc-drift { from { transform: translateX(0); } to { transform: translateX(40px); } }
@media (max-width: 760px) {
	.wc-moon, .wc-hero:not(.wc-hero--home) .wc-moon { width: 76px; top: 10px; left: auto; right: 12px; }
	.wc-hero--home .wc-moon { left: 10px; right: auto; }
	.wc-csun, .wc-hero:not(.wc-hero--home) .wc-csun { width: 110px; top: -26px; right: 8px; }
	.wc-cloud--b { display: none; }
}
@media (prefers-reduced-motion: reduce) { .wc-moon, .wc-spark, .wc-csun .wc-csun__rays, .wc-cloud { animation: none; } }

/* Flag sits right after the city name in "Your current local time in Bangkok 🇹🇭" */
.wc-home-in { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 0 .35em; }
img.wc-home-flag { display: inline-block; width: 2.4em !important; max-width: none; height: auto; aspect-ratio: 4 / 3; margin: 0 0 0 .35em; border-radius: 6px; vertical-align: middle; box-shadow: 0 0 0 2px rgba(255, 255, 255, .85), 0 6px 16px rgba(6, 12, 34, .35); animation: wc-flag-in .5s ease-out both; }
/* Homepage sun on the left so it never sits under the 12h/24h button */
.wc-hero--home .wc-csun:not(.wc-csun--low) { right: auto; left: 4%; }
.wc-hero--home[data-sky="day"] .wc-cloud--a { left: auto; right: 7%; top: 30%; }
.wc-hero--home[data-sky="day"] .wc-cloud--b { right: auto; left: 18%; top: 62%; }
.wc-hero:not(.wc-hero--home) .wc-moon { right: 41%; top: 8%; width: clamp(80px, 8vw, 120px); } .wc-hero:not(.wc-hero--home) .wc-csun:not(.wc-csun--low) { right: 40%; }
/* Homepage hero: tighter top/bottom, bigger brighter flag further right */
.wc-hero.wc-hero--home { padding-top: clamp(14px, 1.8vw, 24px); padding-bottom: clamp(16px, 2vw, 26px); }
.wc-hero--home .wc-home-h1 { margin-top: 0; margin-bottom: 2px; }
.wc-hero--home .wc-home-in { margin-bottom: 4px; }
.wc-hero--home .wc-clock__date { margin-top: 2px; }
.wc-hero--home .wc-search { margin-top: 16px; }
img.wc-home-flag { width: 3.6em !important; margin-left: .9em; border-radius: 8px; filter: saturate(1.45) brightness(1.12) contrast(1.05); box-shadow: 0 0 0 3px #fff, 0 8px 22px rgba(6, 12, 34, .45); }
@media (max-width: 600px) { img.wc-home-flag { width: 2.8em !important; margin-left: .5em; } }
/* Social buttons (footer) */
.wc-social { display: flex !important; gap: 10px !important; margin-top: 16px !important; }
.wc-social a { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; background: rgba(255, 255, 255, .08); color: #fff !important; border: 1px solid rgba(255, 255, 255, .14); transition: background .2s, transform .2s; }
.wc-social a:hover { transform: translateY(-2px); }
.wc-social--facebook:hover { background: #1877f2; border-color: #1877f2; }
.wc-social--x:hover { background: #000; border-color: #000; }

/* City/country heroes: moon sits low between the title and the clock so it never covers text */
.wc-hero:not(.wc-hero--home) .wc-moon { top: auto; bottom: 10%; right: auto; left: 47%; width: clamp(64px, 6vw, 92px); }
.wc-hero:not(.wc-hero--home) .wc-csun:not(.wc-csun--low) { right: auto; left: 44%; top: -40px; width: clamp(120px, 11vw, 170px); }
@media (max-width: 760px) { .wc-hero:not(.wc-hero--home) .wc-moon { left: auto; right: 12px; bottom: auto; top: 12px; width: 58px; } }
.wc-hero:not(.wc-hero--home) .wc-moon { width: clamp(80px, 8vw, 116px); bottom: 12%; left: 46%; }
/* Centred section (homepage "Browse by continent") */
.wc-section--center .wc-chips { justify-content: center; }

/* ---------- Moved from tools.css: used on every page (header menu, footer, homepage tool cards) ---------- */
/* Tool cards (hub, homepage, related) */
.wc-toolcards { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 12px; }
.wc-toolcard { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; column-gap: 12px; row-gap: 2px; align-items: center; padding: 16px; border-radius: var(--wc-radius); background: var(--wc-surface); border: 1px solid var(--wc-line); color: var(--wc-ink) !important; text-decoration: none !important; transition: transform .15s, box-shadow .15s, border-color .15s; }
.wc-toolcard:hover { transform: translateY(-2px); box-shadow: var(--wc-shadow); border-color: var(--wc-accent); }
.wc-toolcard__icon { grid-row: 1 / 3; width: 46px; height: 46px; border-radius: 14px; display: grid; place-items: center; font-size: 1.45rem; background: linear-gradient(135deg, var(--wc-accent-soft), rgba(255, 176, 32, .18)); }
.wc-toolcard__name { font-weight: 750; line-height: 1.25; }
.wc-toolcard__desc { color: var(--wc-muted); font-size: .86rem; line-height: 1.35; }
.wc-toolcards--home .wc-toolcard { grid-template-columns: 1fr; grid-template-rows: auto; text-align: left; padding: 18px; }
.wc-toolcards--home .wc-toolcard__icon { grid-row: auto; margin-bottom: 8px; }

/* ---------- Tools mega menu (Kadence header) ---------- */
.header-navigation .wc-tools-menu > .sub-menu.wc-mega { width: min(1060px, 94vw); left: auto; right: -40px; display: none; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 4px 18px; padding: 18px 20px 14px; border-radius: 16px; box-shadow: 0 18px 50px rgba(13, 19, 33, .18); background: #fff; }
.header-navigation .wc-tools-menu:hover > .sub-menu.wc-mega, .header-navigation .wc-tools-menu.menu-item--toggled-on > .sub-menu.wc-mega, .header-navigation .wc-tools-menu:not(.menu-item--has-toggle):focus-within > .sub-menu.wc-mega { display: grid; }
.header-navigation .wc-tools-menu .wc-mega__col { width: auto !important; border: 0 !important; }
.header-navigation .wc-mega__h { display: block; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #5b6475; padding: 4px 8px 8px; }
.header-navigation .wc-mega__list { list-style: none; margin: 0; padding: 0; position: static !important; display: block !important; }
.header-navigation .wc-mega__list li { width: auto !important; border: 0 !important; }
.header-navigation .wc-mega__list a, .header-navigation .wc-mega__all a { display: flex !important; align-items: center; gap: 8px; padding: 6px 8px !important; width: auto !important; border-radius: 8px; font-size: .92rem; line-height: 1.25; color: #0e1a3a !important; white-space: normal; }
.header-navigation .wc-mega__list a:hover { background: #eef3ff; }
.header-navigation .wc-mega__list .current-menu-item > a { background: #eef3ff; font-weight: 700; }
.wc-mega__i { width: 22px; text-align: center; flex: none; }
.header-navigation .wc-mega__all { grid-column: 1 / -1; border-top: 1px solid #e3e6ec !important; margin-top: 6px; padding-top: 6px; width: auto !important; }
.header-navigation .wc-mega__all a { font-weight: 700; color: #1f5eff !important; }
#mobile-menu .wc-tools-menu .wc-mega__h { font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; opacity: .65; padding: 14px 0 4px 1em; }
#mobile-menu .wc-tools-menu .wc-mega__i { margin-right: 6px; }
@media (min-width: 1025px) { .wc-foot__inner { grid-template-columns: 1.3fr 1.2fr 1fr .8fr .95fr .9fr; gap: 28px; } }
.wc-toolcards--home { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.wc-toolcards--home .wc-toolcard__icon { width: 52px; height: 52px; font-size: 1.6rem; }
.wc-toolcards--home .wc-toolcard__name { font-size: 1.02rem; }
@media (max-width: 860px) { .wc-toolcards--home { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.header-navigation .wc-tools-menu .wc-mega__list li.current-menu-item > a, .header-navigation .wc-tools-menu .wc-mega__list li > a:focus { background: #eef3ff !important; color: #0e1a3a !important; font-weight: 700; }
.header-navigation .wc-tools-menu .wc-mega__list li > a:hover { background: #eef3ff !important; color: #1f5eff !important; }

@media (max-width: 640px) { .wc-toolcard { grid-template-columns: 1fr; padding: 14px; } }

/* ---------- Header search ---------- */
.wc-hsearch { position: relative; display: flex; align-items: center; }
.wc-hsearch__btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 999px; border: 1px solid var(--wc-line, #e3e6ec); background: transparent; color: inherit; cursor: pointer; margin: 0 6px; }
.wc-hsearch__btn:hover, .wc-hsearch__btn[aria-expanded="true"] { background: #eef3ff; color: #1f5eff; }
.wc-hsearch__panel { position: absolute; top: calc(100% + 10px); right: 0; width: min(420px, 92vw); z-index: 1000; background: #fff; border-radius: 14px; box-shadow: 0 18px 50px rgba(13, 19, 33, .18); padding: 12px; }
.wc-hsearch__panel .wc-search { margin: 0; max-width: none; }
.wc-hsearch__panel .wc-search__results { position: static; box-shadow: none; margin-top: 8px; }
#mobile-menu .wc-hsearch { display: block; padding: 8px 0; }
#mobile-menu .wc-hsearch__btn { display: none; }
#mobile-menu .wc-hsearch__panel { display: block !important; position: static; width: auto; box-shadow: none; padding: 0; background: transparent; }
@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .wc-hsearch__panel { background: #121a33; } }

/* v1.6.1 Footer spacing: tighter on mobile; replace the ad plugin's 150px body padding with a dark footer pad that just clears the anchor ad */
body { padding-bottom: 0 !important; }
#colophon .site-bottom-footer-inner-wrap { padding-top: 12px !important; padding-bottom: 12px !important; }
#colophon { padding-bottom: 96px; }
@media (max-width: 760px) {
  .wc-foot { padding: 30px 18px 14px; }
  .wc-foot__inner { gap: 22px !important; }
  .wc-foot h3 { margin-bottom: 8px; }
  .wc-foot ul { gap: 2px; }
  .wc-foot ul a { display: inline-block; padding: 5px 0; }
  .wc-foot__brand p { margin-top: 8px; }
  .wc-foot__langs { margin-top: 10px !important; }
  #colophon .site-bottom-footer-inner-wrap { padding-top: 6px !important; padding-bottom: 6px !important; }
  #colophon { padding-bottom: 72px; }
}

/* v1.6.2 Mobile: no empty gaps in the time zone / sun cards */
@media (max-width: 760px) {
  .wc-stats { grid-template-columns: 1fr 1fr !important; }
  .wc-stats > .wc-stat:first-child:nth-last-child(odd) { grid-column: 1 / -1; }
  .wc-sun { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 8px; }
  .wc-sun .wc-stat { padding: 10px 10px; min-width: 0; }
  .wc-sun .wc-stat__label { font-size: .68rem; letter-spacing: .06em; }
  .wc-sun .wc-stat__value { font-size: clamp(.95rem, 4.2vw, 1.15rem); white-space: nowrap; }
}
