/**
 * Cyprus Discovery — media queries only (loads after theme.css).
 * Header, mega menu, mobile drawer, homepage, about/contact/map pages, post-card scroll-snap, footer.
 */

/* Admin bar: compact touch layout */
@media screen and (max-width: 782px) {
	.admin-bar .site-header {
		top: 46px;
	}

	.admin-bar .cd-mobile-drawer__panel {
		top: 46px;
	}
}

/* Mobile nav, explore overlay, article-of-the-day bar, strip under header */
@media (max-width: 991px) {
	/* Explore dropdown open: stack above .cd-floating-actions (z-index 8900). */
	.site-header:has(.cd-mobile-explore.is-open) {
		z-index: 9050;
		box-shadow: 0 8px 28px rgb(11 32 72 / 14%);
	}

	.site-navigation--primary {
		display: none !important;
	}

	.site-header__actions--desktop {
		display: none !important;
	}

	.site-header__actions--mobile {
		display: flex;
	}

	.site-header__aod--mobile-bar {
		max-width: min(46vw, 11.5rem);
		padding-left: 0.5rem;
		padding-right: 0.5rem;
		white-space: normal;
		text-align: center;
		line-height: 1.15;
		font-size: 0.75rem;
	}

	.site-header__aod--mobile-bar .site-header__aod-icon {
		font-size: 1.1rem;
		flex-shrink: 0;
	}

	.site-header__aod--mobile-bar .site-header__aod-label {
		display: -webkit-box;
		-webkit-line-clamp: 2;
		line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
		white-space: normal;
		text-align: left;
	}

	/**
	 * Mobile-only strip under the header bar: search + explore (not in the drawer).
	 */
	.site-header__mobile-below {
		--cd-mobile-bar-row-h: 2.75rem;
		display: flex;
		flex-direction: column;
		gap: 0;
		width: 100%;
		max-width: var(--cd-header-width);
		margin: 0 auto;
		padding: 0;
		box-sizing: border-box;
		border-top: 1px solid rgb(11 32 72 / 10%);
	}

	.site-header.is-header-compact .site-header__mobile-below {
		padding: 0;
		gap: 0;
	}

	.site-header__mobile-below .cd-mobile-explore {
		margin-top: 0;
		padding: 0;
		border-top: 0;
	}

	.site-header__mobile-search {
		margin: 0;
		padding: 0;
		box-sizing: border-box;
	}

	/* Taller row to match explore trigger; padding/icon/input come from theme.css */
	.site-header__mobile-search .cyprus-search-form__inner {
		min-height: var(--cd-mobile-bar-row-h);
	}

	.site-header__mobile-search .cyprus-search-form__input {
		padding-left: 1.15rem;
		min-width: 0;
	}

	.site-header__mobile-search .cyprus-search-form__btn.cyprus-search-form__btn--icon-submit {
		flex-shrink: 0;
		align-self: center;
		min-width: 2.5rem;
		min-height: var(--cd-mobile-bar-row-h);
		width: auto;
		margin: 0;
		padding: 0;
		border: 0;
		background: transparent !important;
		box-shadow: none !important;
		color: var(--cd-accent);
		display: inline-flex;
		align-items: center;
		justify-content: right;
		cursor: pointer;
		font: inherit;
		line-height: 1;
		-webkit-appearance: none;
		appearance: none;
	}

	.site-header__mobile-search .cyprus-search-form__btn.cyprus-search-form__btn--icon-submit:hover,
	.site-header__mobile-search .cyprus-search-form__btn.cyprus-search-form__btn--icon-submit:focus-visible {
		background: transparent !important;
		color: var(--cd-accent-hover);
		box-shadow: none !important;
	}

	.site-header__mobile-search .cyprus-search-form__btn.cyprus-search-form__btn--icon-submit:focus-visible {
		outline: 2px solid var(--cd-accent-hover);
		outline-offset: 2px;
	}

	.site-header__mobile-search .cyprus-search-form__submit-icon {
		font-size: 1.25rem;
		line-height: 1;
	}

	.site-header__mobile-below .cd-mobile-explore__trigger {
		width: 100%;
		box-sizing: border-box;
		min-height: var(--cd-mobile-bar-row-h);
		padding: 0 0.85rem;
		gap: 0.45rem;
		border: 0;
		border-radius: 0;
		background: var(--cd-accent);
		color: #fff;
		font-size: 0.9375rem;
		font-weight: 600;
		box-shadow: 0 1px 4px rgb(11 32 72 / 26%);
	}

	.site-header__mobile-below .cd-mobile-explore__trigger:hover,
	.site-header__mobile-below .cd-mobile-explore__trigger:focus-visible {
		background: var(--cd-accent-hover);
		color: #fff;
		outline: none;
		box-shadow:
			0 2px 8px rgb(11 32 72 / 48%),
			0 1px 3px rgb(11 32 72 / 34%);
	}

	.site-header__mobile-below .cd-mobile-explore__trigger-icon {
		font-size: 1rem;
		color: #fff;
		opacity: 0.95;
	}

	.site-header__mobile-below .cd-mobile-explore__panel {
		position: relative;
		z-index: 2;
		margin-top: 0rem;
		margin-left: auto;
		margin-right: auto;
		padding: 0;
		width: 100%;
		max-width: min(100%, var(--cd-header-width));
		max-height: min(60vh, calc(100vh - 9.25rem));
		max-height: min(60vh, calc(100dvh - 9.25rem));
		overflow-x: hidden;
		overflow-y: auto;
		overscroll-behavior: contain;
		-webkit-overflow-scrolling: touch;
		background: #fff;
		box-sizing: border-box;
	}

	.site-header__mobile-below .cd-mobile-explore__panel .cd-explore__row {
		min-height: var(--cd-mobile-bar-row-h);
		align-items: stretch;
	}

	.site-header__mobile-below .cd-mobile-explore__panel .cd-explore__link {
		display: flex;
		align-items: center;
		padding: 0 0.5rem 0 1.25rem;
		box-sizing: border-box;
	}

	.site-header__mobile-below .cd-mobile-explore__panel .cd-explore__toggle {
		align-self: stretch;
		width: 2.75rem;
		min-height: var(--cd-mobile-bar-row-h);
	}

	.site-header__mobile-below .cd-mobile-explore__panel .cd-explore__post-link {
		display: flex;
		align-items: center;
		min-height: var(--cd-mobile-bar-row-h);
		padding: 0 0.5rem 0 1.25rem;
		box-sizing: border-box;
		line-height: 1.25;
	}
}

/* Mega menu: stack columns */
@media (max-width: 900px) {
	.mega-menu__cols--three {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.mega-menu__col--parents,
	.mega-menu__col--subs {
		border-right: 0;
		border-bottom: 1px solid rgb(11 32 72 / 8%);
	}
}

/* Desktop: drawer markup present but not shown */
@media (min-width: 992px) {
	.cd-mobile-drawer {
		display: none !important;
	}
}

/* --------------------------------------------------------------------------
 * Homepage (and homepage template only): tablets & phones
 * Scoped to .site-main--homepage so archives keep their own patterns.
 * -------------------------------------------------------------------------- */

/* Tablet 2-col + edge bleed: horizontal padding 0 so grid hits edges; phones use swiper gutters below */
@media (max-width: 1024px) and (min-width: 768px) {
	.site-main--homepage .cyprus-home .cyprus-post-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin-left: -1.25rem;
		width: calc(100% + 2.5rem);
		padding: 0 0 1rem 0;
		box-sizing: border-box;
	}

	/* About Us, Contact Us, map: featured articles 2 columns (no full-bleed) */
	.site-main--about-page .cyprus-home .cyprus-post-cards,
	.site-main--posts-map .cyprus-home .cyprus-post-cards,
	.site-main--contact-page .cyprus-home .cyprus-post-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.site-main--homepage .cyprus-home .cyprus-home__bento-row,
	.site-main--homepage .cyprus-home .cyprus-home__bento-row--flip {
		grid-template-columns: 1fr;
	}

	.site-main--homepage .cyprus-home .cyprus-home__bento-few {
		grid-template-columns: 1fr;
	}

	.site-main--homepage .cyprus-home .cyprus-home__category-split {
		grid-template-columns: 1fr;
		gap: 1rem;
	}

	.site-main--homepage .cyprus-home .cyprus-home__category-split-hero .cyprus-cat-card__media {
		min-height: clamp(220px, 52vw, 420px);
	}

	.site-main--homepage .cyprus-home .cyprus-home__about-inner,
	.site-main--homepage .cyprus-home .cyprus-home__contact-inner,
	.site-main--about-page .cyprus-home__about-inner,
	.site-main--contact-page .cyprus-home .cyprus-home__contact-inner {
		grid-template-columns: 1fr;
	}

	.site-main--homepage .cyprus-home .cyprus-home__about-gallery,
	.site-main--about-page .cyprus-home__about-gallery {
		min-height: clamp(200px, 45vw, 360px);
	}
}

/* Post card grids → horizontal scroll-snap on phones: homepage, About Us, map, Contact Us, homepage category-split */
@media (max-width: 767px) {
	.site-main--homepage .cyprus-home .cyprus-post-cards,
	.site-main--about-page .cyprus-home .cyprus-post-cards,
	.site-main--posts-map .cyprus-home .cyprus-post-cards,
	.site-main--contact-page .cyprus-home .cyprus-post-cards {
		margin-left: -1.25rem;
		width: calc(100% + 2.5rem);
		padding: 0 1.25rem 1rem 1.25rem;
		box-sizing: border-box;
	}

	.site-main--homepage .cyprus-post-cards,
	.site-main--about-page .cyprus-post-cards,
	.site-main--posts-map .cyprus-post-cards,
	.site-main--contact-page .cyprus-post-cards {
		--cyprus-post-cards-slide-pct: 82%;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		grid-template-columns: unset;
		align-items: stretch;
		gap: 1.125rem;
		padding-inline: 1.25rem;
		overflow-x: auto;
		overflow-y: visible;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
		scrollbar-width: thin;
		scrollbar-color: rgb(11 32 72 / 35%) transparent;
		scroll-padding-inline: 1.25rem;
	}

	.site-main--homepage .cyprus-post-cards::before,
	.site-main--homepage .cyprus-post-cards::after,
	.site-main--about-page .cyprus-post-cards::before,
	.site-main--about-page .cyprus-post-cards::after,
	.site-main--posts-map .cyprus-post-cards::before,
	.site-main--posts-map .cyprus-post-cards::after,
	.site-main--contact-page .cyprus-post-cards::before,
	.site-main--contact-page .cyprus-post-cards::after {
		content: '';
		flex: 0 0 max(1.25rem, calc((100% - 90%) / 2));
		scroll-snap-align: none;
		pointer-events: none;
	}

	.site-main--homepage .cyprus-post-cards::-webkit-scrollbar,
	.site-main--about-page .cyprus-post-cards::-webkit-scrollbar,
	.site-main--posts-map .cyprus-post-cards::-webkit-scrollbar,
	.site-main--contact-page .cyprus-post-cards::-webkit-scrollbar {
		height: 5px;
	}

	.site-main--homepage .cyprus-post-cards::-webkit-scrollbar-thumb,
	.site-main--about-page .cyprus-post-cards::-webkit-scrollbar-thumb,
	.site-main--posts-map .cyprus-post-cards::-webkit-scrollbar-thumb,
	.site-main--contact-page .cyprus-post-cards::-webkit-scrollbar-thumb {
		background: rgb(11 32 72 / 30%);
		border-radius: 999px;
	}

	.site-main--homepage .cyprus-post-cards::-webkit-scrollbar-track,
	.site-main--about-page .cyprus-post-cards::-webkit-scrollbar-track,
	.site-main--posts-map .cyprus-post-cards::-webkit-scrollbar-track,
	.site-main--contact-page .cyprus-post-cards::-webkit-scrollbar-track {
		background: rgb(11 32 72 / 6%);
		border-radius: 999px;
	}

	.site-main--homepage .cyprus-post-cards .cyprus-post-cards__cell,
	.site-main--about-page .cyprus-post-cards .cyprus-post-cards__cell,
	.site-main--posts-map .cyprus-post-cards .cyprus-post-cards__cell,
	.site-main--contact-page .cyprus-post-cards .cyprus-post-cards__cell,
	.site-main--homepage .cyprus-home__category-split-grid .cyprus-post-cards__cell {
		flex: 0 0 var(--cyprus-post-cards-slide-pct);
		scroll-snap-stop: always;
	}

	.site-main--homepage .cyprus-post-cards .cyprus-post-cards__cell:first-child,
	.site-main--about-page .cyprus-post-cards .cyprus-post-cards__cell:first-child,
	.site-main--posts-map .cyprus-post-cards .cyprus-post-cards__cell:first-child,
	.site-main--contact-page .cyprus-post-cards .cyprus-post-cards__cell:first-child,
	.site-main--homepage .cyprus-home__category-split-grid .cyprus-post-cards__cell:first-child {
		scroll-snap-align: start;
	}

	.site-main--homepage .cyprus-post-cards .cyprus-post-cards__cell:last-child:not(:only-child),
	.site-main--about-page .cyprus-post-cards .cyprus-post-cards__cell:last-child:not(:only-child),
	.site-main--posts-map .cyprus-post-cards .cyprus-post-cards__cell:last-child:not(:only-child),
	.site-main--contact-page .cyprus-post-cards .cyprus-post-cards__cell:last-child:not(:only-child),
	.site-main--homepage .cyprus-home__category-split-grid .cyprus-post-cards__cell:last-child:not(:only-child) {
		scroll-snap-align: end;
	}

	.site-main--homepage .cyprus-post-cards .cyprus-post-cards__cell:not(:first-child):not(:last-child),
	.site-main--about-page .cyprus-post-cards .cyprus-post-cards__cell:not(:first-child):not(:last-child),
	.site-main--posts-map .cyprus-post-cards .cyprus-post-cards__cell:not(:first-child):not(:last-child),
	.site-main--contact-page .cyprus-post-cards .cyprus-post-cards__cell:not(:first-child):not(:last-child),
	.site-main--homepage .cyprus-home__category-split-grid .cyprus-post-cards__cell:not(:first-child):not(:last-child) {
		scroll-snap-align: center;
	}

	.site-main--homepage .cyprus-post-cards .cyprus-post-cards__cell:only-child,
	.site-main--about-page .cyprus-post-cards .cyprus-post-cards__cell:only-child,
	.site-main--posts-map .cyprus-post-cards .cyprus-post-cards__cell:only-child,
	.site-main--contact-page .cyprus-post-cards .cyprus-post-cards__cell:only-child,
	.site-main--homepage .cyprus-home__category-split-grid .cyprus-post-cards__cell:only-child {
		scroll-snap-align: center;
	}

	.site-main--homepage .cyprus-home__category-split-grid {
		padding: 0 0 1rem 0;
		--cyprus-post-cards-slide-pct: 82%;
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		grid-template-columns: unset;
		align-items: stretch;
		gap: 1.125rem;
		padding-inline: 1.25rem;
		margin-left: -1.25rem;
		width: calc(100% + 2.5rem);
		box-sizing: border-box;
		overflow-x: auto;
		overflow-y: visible;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
		scrollbar-width: thin;
		scrollbar-color: rgb(11 32 72 / 35%) transparent;
		scroll-padding-inline: 1.25rem;
	}

	.site-main--homepage .cyprus-home__category-split-grid::before,
	.site-main--homepage .cyprus-home__category-split-grid::after {
		content: '';
		flex: 0 0 max(1.25rem, calc((100% - var(--cyprus-post-cards-slide-pct)) / 2));
		scroll-snap-align: none;
		pointer-events: none;
	}

	.site-main--homepage .cyprus-home__category-split-grid::-webkit-scrollbar {
		height: 5px;
	}

	.site-main--homepage .cyprus-home__category-split-grid::-webkit-scrollbar-thumb {
		background: rgb(11 32 72 / 30%);
		border-radius: 999px;
	}

	.site-main--homepage .cyprus-home__category-split-grid::-webkit-scrollbar-track {
		background: rgb(11 32 72 / 6%);
		border-radius: 999px;
	}

	/* Single category archive (not “all categories”): 2-col subcats, vertical article list */
	main.site-main.site-main--category-archive:not(.site-main--all-categories)
		.cyprus-category-archive__subsection--subcats
		.cyprus-all-categories__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	main.site-main:not(.site-main--homepage):not(.site-main--about-page):not(.site-main--posts-map):not(.site-main--contact-page) .cyprus-post-cards {
		display: grid;
		grid-template-columns: 1fr;
		overflow-x: visible;
		overflow-y: visible;
		padding: 0;
		margin-left: 0;
		width: 100%;
		max-width: none;
		scroll-snap-type: none;
		scroll-padding-inline: 0;
		-webkit-overflow-scrolling: auto;
	}

	main.site-main:not(.site-main--homepage):not(.site-main--about-page):not(.site-main--posts-map):not(.site-main--contact-page) .cyprus-post-cards::before,
	main.site-main:not(.site-main--homepage):not(.site-main--about-page):not(.site-main--posts-map):not(.site-main--contact-page) .cyprus-post-cards::after {
		display: none;
		content: none;
		flex: none;
	}

	main.site-main:not(.site-main--homepage):not(.site-main--about-page):not(.site-main--posts-map):not(.site-main--contact-page) .cyprus-post-cards .cyprus-post-cards__cell {
		flex: unset;
		scroll-snap-align: unset;
		scroll-snap-stop: normal;
	}

	.site-main--category-archive .cyprus-home__intro-text {
		flex: 1 1 100%;
		max-width: 100%;
		width: 100%;
		min-width: 0;
	}

	/* About Us: vertical rhythm + readable heading */
	.site-main--about-page .cyprus-home.cyprus-home--about-page {
		padding: 2rem 0 2.5rem;
	}

	.site-main--about-page .cyprus-home__about-heading {
		font-size: clamp(1.85rem, 5.25vw, 2.45rem);
	}

	.site-main--about-page .cyprus-home__about-body {
		max-width: none;
	}

	.site-main--about-page .cyprus-home__intro-text {
		flex: 1 1 100%;
		max-width: 100%;
		width: 100%;
		min-width: 0;
	}

	.site-main--about-page .cyprus-home__intro {
		flex-direction: column;
		align-items: stretch;
		gap: 0.85rem;
	}

	.site-main--about-page .cyprus-home .cyprus-post-card__body,
	.site-main--posts-map .cyprus-home .cyprus-post-card__body,
	.site-main--contact-page .cyprus-home .cyprus-post-card__body {
		padding: 1.1rem 1.15rem 1.25rem;
	}

	.site-main--about-page .cyprus-home .cyprus-home__section-divider {
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}

	/* Contact Us: stack + rhythm (matches About-style featured block) */
	.site-main--contact-page .cyprus-home.cyprus-home--contact-page {
		padding: 2rem 0 2.5rem;
	}

	.site-main--contact-page .cyprus-home__contact-heading {
		font-size: clamp(1.85rem, 5.25vw, 2.45rem);
	}

	.site-main--contact-page .cyprus-home__contact-body {
		max-width: none;
	}

	.site-main--contact-page .cyprus-home .cyprus-home__section-divider {
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}

	.site-main--contact-page .cyprus-home__contact-inner > .wpcf7 .wpcf7-submit,
	.site-main--contact-page .cyprus-home__contact-inner > .wpcf7 input[type="submit"].cd-contact-submit {
		align-self: stretch;
		width: 100%;
		box-sizing: border-box;
		text-align: center;
	}
}

@media (max-width: 767px) and (prefers-reduced-motion: reduce) {
	.site-main--homepage .cyprus-post-cards,
	.site-main--about-page .cyprus-post-cards,
	.site-main--posts-map .cyprus-post-cards,
	.site-main--contact-page .cyprus-post-cards,
	.site-main--homepage .cyprus-home__category-split-grid {
		scroll-behavior: auto;
		scroll-snap-type: x proximity;
	}
}

@media (max-width: 640px) {
	.site-main--legal-page .cyprus-all-categories__hero--banner .cyprus-all-categories__hero-title {
		font-size: clamp(1.6rem, 6.5vw, 2.15rem);
	}

	.site-main--homepage .cyprus-home .cyprus-home__hero {
		padding: 2rem 0 2.25rem;
	}

	.site-main--homepage .cyprus-home .cyprus-home__section-divider {
		margin-top: 1.5rem;
		margin-bottom: 1.5rem;
	}

	.site-main--homepage .cyprus-home .cyprus-home__intro {
		flex-direction: column;
		align-items: stretch;
		gap: 0.85rem;
	}

	.site-main--homepage .cyprus-home .cyprus-home__intro-text {
		flex: 1 1 auto;
		max-width: none;
	}

	.site-main--homepage .cyprus-home .cyprus-home__intro-cta:not(.cyprus-home__intro-cta--hide-mobile) {
		align-self: stretch;
	}

	.site-main--homepage .cyprus-home .cyprus-home__intro-cta:not(.cyprus-home__intro-cta--hide-mobile) .cd-btn {
		width: 100%;
		justify-content: center;
		text-align: center;
		box-sizing: border-box;
	}

	.site-main--homepage .cyprus-home .cyprus-post-card__body,
	.site-main--posts-map .cyprus-home .cyprus-post-card__body,
	.site-main--contact-page .cyprus-home .cyprus-post-card__body {
		padding: 1.1rem 1.15rem 1.25rem;
	}
}

/* Matches PHP default intro_cta_hide_mobile (hide under 768px). */
@media (max-width: 767px) {
	.cyprus-home__intro-cta--hide-mobile {
		display: none;
	}

	/* Footer “topic we should cover”: readable heading + stacked CF7 pill */
	.cd-footer-topic-suggest {
		box-sizing: border-box;
		width: calc(100% - 2rem);
		max-width: min(100% - 2rem, var(--cd-site-width));
		padding: clamp(1.5rem, 4.5vw, 2.25rem) 1rem;
		border-radius: 14px;
	}

	.cd-footer-topic-suggest__title {
		font-size: clamp(1.42rem, 5.35vw, 1.8rem);
		line-height: 1.25;
	}

	.cd-footer-topic-suggest__subtitle {
		font-size: 0.9375rem;
		line-height: 1.5;
		margin-bottom: 1rem;
	}

	.cd-footer-topic-suggest__pill {
		max-width: 100%;
	}

	.cd-footer-topic-suggest .cd-footer-topic-suggest__pill-track {
		flex-direction: column;
		align-items: stretch;
		justify-content: flex-start;
		width: 100%;
		padding: 0.5rem;
		border-radius: 14px;
		gap: 0.5rem;
	}

	.cd-footer-topic-suggest .cd-footer-topic-suggest__pill-track > p {
		width: 100%;
		box-sizing: border-box;
	}

	.cd-footer-topic-suggest .cd-footer-topic-suggest__pill-track > p:has(.wpcf7-form-control-wrap) {
		flex: 1 1 auto;
		min-width: 0;
	}

	.cd-footer-topic-suggest .cd-footer-topic-suggest__pill-track > p:has(.wpcf7-submit) {
		flex: 0 0 auto;
		flex-wrap: wrap;
		justify-content: center;
	}

	.cd-footer-topic-suggest .cd-footer-topic-suggest__input,
	.cd-footer-topic-suggest input.wpcf7-text {
		min-height: 2.75rem;
		border-radius: 9999px;
	}

	.cd-footer-topic-suggest .wpcf7-submit,
	.cd-footer-topic-suggest input[type="submit"].wpcf7-submit {
		width: 100%;
		margin: 0;
		min-height: 2.75rem;
	}

	@supports not selector(:has(*)) {
		.cd-footer-topic-suggest .cd-footer-topic-suggest__pill-track > p:first-of-type {
			width: 100%;
			min-width: 0;
		}

		.cd-footer-topic-suggest .cd-footer-topic-suggest__pill-track > p:last-of-type {
			width: 100%;
			justify-content: center;
			flex-wrap: wrap;
		}
	}

	/* Sun band */
	.site-footer-sun {
		padding: 1.25rem 1rem 1.5rem;
	}

	.site-footer-sun__img {
		width: clamp(2.75rem, 12vw, 3.5rem);
	}

	/* Legal / credits bar: stack and center */
	.site-footer__inner {
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		text-align: center;
		padding: 1rem 1rem max(1rem, env(safe-area-inset-bottom));
		gap: 0.85rem 1rem;
	}

	.site-footer__copy {
		flex: none;
		width: 100%;
		max-width: 26rem;
		text-align: center;
		font-size: 0.8125rem;
		line-height: 1.45;
	}

	.site-footer__aside {
		flex: none;
		width: 100%;
		max-width: 22rem;
		flex-direction: column;
		align-items: center;
		justify-content: flex-start;
		gap: 0.5rem;
		text-align: center;
		font-size: 0.8125rem;
	}

	.site-footer__aside > a:not(.site-footer__email) {
		padding: 0.15rem 0;
	}

	.site-footer__sep {
		display: none;
	}

	.site-footer__email {
		justify-content: center;
		margin-top: 0.15rem;
		font-size: 0.8rem;
		text-align: center;
	}

	/* Floating actions: respect safe areas on notched phones */
	.cd-floating-actions {
		left: max(1rem, env(safe-area-inset-left));
		bottom: calc(max(1.45rem, calc(env(safe-area-inset-bottom) + 0.35rem)) + var(--cd-floating-footer-clearance));
	}
}

@media (prefers-reduced-motion: reduce) {
	.site-header__inner,
	.site-header__logo-img {
		transition: none;
	}

	.site-header__search-panel {
		transition: none;
	}

	.cd-mobile-drawer,
	.cd-mobile-drawer__backdrop,
	.cd-mobile-drawer__panel,
	.cd-mobile-explore__trigger-icon,
	.cd-explore__toggle-icon {
		transition: none;
	}
}
