/* Home page, laid out like the nucynergy.org home: hero, free membership strip, six cards with a side column. */

/* The page title stays in the markup for search engines and screen readers. */
.home .entry-header { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.home .inside-article { padding: 0; background: transparent; border: 0; }
.home .entry-content > * + * { margin-top: 1.5rem; }
/* Classic themes wrap group content in an inner container; let the group's own grid or flex lay out the children. */
.home .entry-content .wp-block-group__inner-container { display: contents; }
.home .wp-block-image { margin: 0; }
.home .wp-block-image img { height: auto; }

/* Hero */
.ncy-home-hero {
	position: relative;
	overflow: hidden;
	padding: clamp(1.5rem, 4vw, 3rem);
	border: 1px solid rgba(212, 175, 55, .35);
	border-radius: 16px;
	background:
		radial-gradient(600px 300px at 85% 30%, rgba(212, 175, 55, .12), transparent 70%),
		linear-gradient(135deg, #011001 0%, #0b1a12 45%, var(--ncy-imperial-glow) 100%);
}
.ncy-home-hero__cols { align-items: center; gap: 2rem; margin: 0; }
.ncy-home-wordmark img { width: min(520px, 100%); aspect-ratio: 900 / 207; }
.ncy-home-tagline { max-width: 34rem; margin: 1rem 0 1.5rem; font-size: clamp(1.05rem, 1.8vw, 1.3rem); line-height: 1.5; color: var(--ncy-text); }
.ncy-home-hero__side { text-align: center; }
.ncy-home-emblem img { width: min(260px, 70%); aspect-ratio: 640 / 631; filter: drop-shadow(0 8px 30px rgba(212, 175, 55, .25)); }
.ncy-home-trust { margin: 1rem auto 0; max-width: 20rem; font-style: italic; color: var(--ncy-text-muted); }

/* Outline buttons on the dark base */
.home .wp-block-button.is-style-outline > .wp-block-button__link {
	border: 2px solid var(--ncy-gold);
	background: transparent;
	color: var(--ncy-gold-accent);
}
.home .wp-block-button.is-style-outline > .wp-block-button__link:hover,
.home .wp-block-button.is-style-outline > .wp-block-button__link:focus { background: rgba(212, 175, 55, .12); color: #fff; }
.home .wp-block-button:not(.is-style-outline) > .wp-block-button__link {
	background: var(--ncy-emerald-strong);
	color: #fbf5b7;
	border: 1px solid var(--ncy-gold);
	box-shadow: var(--ncy-gold-luster-shadow);
}
.home .wp-block-button__link { border-radius: 8px; padding: .7rem 1.4rem; font-weight: 600; }

/* Free membership strip */
.ncy-home-signup {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem 2rem;
	padding: 1.1rem 1.5rem;
	border-radius: 12px;
	border: 1px solid rgba(212, 175, 55, .5);
	background: linear-gradient(90deg, rgba(212, 175, 55, .16), rgba(212, 175, 55, .04));
	box-shadow: var(--ncy-gold-luster-shadow, 0 4px 15px rgba(187, 143, 40, .4));
}
.ncy-home-signup__text p { margin: 0; font-size: 1.2rem; color: var(--ncy-text); }
.ncy-home-signup__text strong { color: var(--ncy-gold-accent); }
.ncy-home-signup__text .ncy-home-signup__sub { font-size: .95rem; color: var(--ncy-text-muted); }
.ncy-home-signup .wp-block-buttons { margin: 0; }

/* Cards and side column */
.ncy-home-main { gap: 1.5rem; margin: 0; align-items: flex-start; }
.ncy-home-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.ncy-home-card {
	margin: 0;
	display: flex;
	flex-direction: column;
	padding: 1.25rem;
	border: 1px solid var(--ncy-border);
	border-top: 3px solid var(--ncy-gold);
	border-radius: 12px;
	background: var(--ncy-surface);
	transition: transform .15s ease, border-color .15s ease;
}
.ncy-home-card:hover { transform: translateY(-2px); border-color: rgba(212, 175, 55, .45); }
.ncy-home-card h3 { margin: .75rem 0 .4rem; font-size: 1.1rem; color: var(--ncy-gold-accent); }
.ncy-home-card p { margin: 0; font-size: .93rem; line-height: 1.55; color: var(--ncy-text-muted); }
.ncy-home-card .ncy-home-card__link { margin-top: auto; padding-top: .75rem; }
.ncy-home-card__link a { font-weight: 600; }
.ncy-home-card__link a::after { content: " \2192"; }
.ncy-home-card__icon img { width: 44px; height: 44px; }
.ncy-home-card__icon--emblem img, .ncy-home-card__icon--badge img { width: 64px; height: 64px; object-fit: contain; }

.ncy-home-aside {
	padding: 1.25rem;
	border: 1px solid var(--ncy-border);
	border-radius: 12px;
	background: var(--ncy-surface);
	text-align: center;
}
.ncy-home-aside__buttons { flex-direction: column; align-items: stretch; gap: .6rem; }
.ncy-home-aside__buttons .wp-block-button { width: 100%; }
.ncy-home-aside__buttons .wp-block-button__link { width: 100%; }
.ncy-home-aside h4 { margin: 1.5rem 0 .75rem; font-size: .85rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ncy-gold-accent); }
.ncy-home-tips { display: grid; grid-template-columns: repeat(3, 1fr); gap: .5rem; }
.ncy-home-tip { margin: 0; }
.ncy-home-tip p { margin: .35rem 0 0; font-size: .8rem; letter-spacing: .06em; text-transform: uppercase; color: var(--ncy-text-muted); }
.ncy-home-tip__icon img { width: 40px; height: 40px; margin: 0 auto; }
.ncy-home-qoq { margin-top: 1.5rem !important; }
.ncy-home-qoq,
.ncy-home-qoq img { background: transparent !important; }
.ncy-home-qoq img { width: 132px; aspect-ratio: 360 / 359; margin: 0 auto; }
.ncy-home-qoq figcaption { margin-top: .5rem; font-size: .8rem; color: var(--ncy-text-muted); }

@media (max-width: 1024px) {
	.ncy-home-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 781px) {
	.ncy-home-hero__side { display: none; }
	.ncy-home-main .ncy-home-main__cards, .ncy-home-main .ncy-home-aside { flex-basis: 100% !important; }
}
@media (max-width: 560px) {
	.ncy-home-cards { grid-template-columns: 1fr; }
	.ncy-home-signup { flex-direction: column; align-items: flex-start; }
}

/* Tier-flag layout: Join vs Member without rebuilding the home blocks. */
body.ncy-auth .ncy-home-signup { display: none; }
body.ncy-auth .ncy-home-hero .wp-block-button:has(a[href*="/register/"]),
body.ncy-auth .ncy-home-aside .wp-block-button:has(a[href*="/register/"]) { display: none; }
body.ncy-guest .ncy-home-aside .wp-block-button:has(a[href*="/member/"]) { display: none; }
