/* Nestora Leaf Homepage Cards - front-end. Everything is scoped under .nlhc */
.nlhc{
	--nlhc-orange:#E87924;       /* brand orange: accents, bars, borders */
	--nlhc-orange-deep:#B85A24;  /* darker orange: buttons/links (white text = 4.6:1 contrast) */
	--nlhc-orange-darker:#9A4A1D;
	--nlhc-ink:#252525;
	--nlhc-mute:#5F5A55;
	--nlhc-warm:#FAF9F6;
	--nlhc-beige:#F0E8DD;
	color:var(--nlhc-ink);
}
.nlhc *,.nlhc *::before,.nlhc *::after{box-sizing:border-box}
.nlhc-container{max-width:1160px;margin:0 auto;padding:0 22px}
.nlhc ul{list-style:none;margin:0;padding:0}

/* Owner-only preview bar */
.nlhc-preview-bar{background:var(--nlhc-ink);color:#fff;text-align:center;font-size:.9rem;padding:10px 16px}
.nlhc-preview-bar a{color:#fff;margin-left:10px;text-decoration:underline}

/* Buttons */
.nlhc-btn{display:inline-block;padding:13px 26px;border-radius:99px;background:var(--nlhc-orange-deep);border:2px solid var(--nlhc-orange-deep);color:#fff;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s}
.nlhc-btn:hover,.nlhc-btn:focus-visible{background:var(--nlhc-orange-darker);border-color:var(--nlhc-orange-darker);color:#fff}
.nlhc-btn--ghost{background:transparent;color:var(--nlhc-ink);border-color:var(--nlhc-ink)}
.nlhc-btn--ghost:hover,.nlhc-btn--ghost:focus-visible{background:var(--nlhc-ink);border-color:var(--nlhc-ink);color:#fff}
.nlhc a:focus-visible{outline:2px solid var(--nlhc-orange-deep);outline-offset:3px}

/* Hero */
.nlhc-hero{background:var(--nlhc-warm);border-bottom:1px solid var(--nlhc-beige)}
.nlhc-hero__inner{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center;padding-top:56px;padding-bottom:56px}
.nlhc-hero--noimg .nlhc-hero__inner{grid-template-columns:1fr;max-width:820px;text-align:center}
.nlhc-hero--noimg .nlhc-hero__actions{justify-content:center}
.nlhc-hero--noimg .nlhc-hero__text{margin-left:auto;margin-right:auto}
.nlhc-hero h1{font-size:clamp(2.1rem,4.8vw,3.5rem);line-height:1.1;margin:0 0 .45em}
.nlhc-hero__text{font-size:1.1rem;line-height:1.6;color:var(--nlhc-mute);max-width:46ch;margin:0}
.nlhc-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.nlhc-hero__media{margin:0;border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(37,37,37,.12)}
.nlhc-hero__media img{display:block;width:100%;height:auto;aspect-ratio:4/3.4;object-fit:cover}

/* Sections */
.nlhc-section{padding:60px 0}
.nlhc-section--warm{background:var(--nlhc-warm);border-top:1px solid var(--nlhc-beige);border-bottom:1px solid var(--nlhc-beige)}
.nlhc-section__title{font-size:clamp(1.8rem,3.4vw,2.5rem);line-height:1.15;margin:0 0 28px}
.nlhc-section__title::before{content:"";display:block;width:44px;height:3px;background:var(--nlhc-orange);margin-bottom:14px}

/* Category cards */
.nlhc-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:22px}
.nlhc-card{position:relative;background:#fff;border:1px solid var(--nlhc-beige);border-radius:16px;overflow:hidden;box-shadow:0 2px 10px rgba(37,37,37,.05);transition:transform .25s,box-shadow .25s}
.nlhc-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(37,37,37,.12)}
.nlhc-card:focus-within{outline:2px solid var(--nlhc-orange-deep);outline-offset:2px}
.nlhc-card__media{aspect-ratio:4/3;background:var(--nlhc-beige);overflow:hidden}
.nlhc-card__media img{display:block;width:100%;height:100%;object-fit:cover}
.nlhc-card__body{padding:16px 18px 20px}
.nlhc-card__title{font-size:1.3rem;line-height:1.2;margin:0 0 6px}
.nlhc-card__title a{color:var(--nlhc-ink);text-decoration:none}
.nlhc-card__title a::after{content:"";position:absolute;inset:0;z-index:1} /* whole card (image + title) is clickable */
.nlhc-card__title a:focus-visible{outline:none}
.nlhc-card__desc{margin:0;color:var(--nlhc-mute);font-size:.95rem;line-height:1.5}

/* Post cards */
.nlhc-posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.nlhc-post{background:#fff;border:1px solid var(--nlhc-beige);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.nlhc-post__media{display:block;aspect-ratio:16/10;background:var(--nlhc-beige);overflow:hidden}
.nlhc-post__media img{display:block;width:100%;height:100%;object-fit:cover}
.nlhc-post__body{padding:16px 18px 20px;display:flex;flex-direction:column;flex:1}
.nlhc-post__cat{margin:0 0 6px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--nlhc-orange-deep)}
.nlhc-post__title{font-size:1.3rem;line-height:1.25;margin:0 0 8px}
.nlhc-post__title a{color:var(--nlhc-ink);text-decoration:none}
.nlhc-post__title a:hover{color:var(--nlhc-orange-deep)}
.nlhc-post__excerpt{margin:0 0 14px;color:var(--nlhc-mute);font-size:.95rem;line-height:1.55;max-width:none}
.nlhc-post__more{margin-top:auto;color:var(--nlhc-orange-deep);font-weight:600;text-decoration:none}
.nlhc-post__more:hover{text-decoration:underline}
.nlhc-post__date{margin:0;color:var(--nlhc-mute);font-size:.88rem}

@media (max-width:900px){
	.nlhc-hero__inner{grid-template-columns:1fr;gap:28px;padding-top:34px;padding-bottom:40px}
	.nlhc-cards,.nlhc-posts{grid-template-columns:repeat(2,1fr)}
	.nlhc-section{padding:44px 0}
}
@media (max-width:560px){
	.nlhc-cards,.nlhc-posts{grid-template-columns:1fr}
	.nlhc-btn{width:100%;text-align:center}
}
@media (prefers-reduced-motion:reduce){
	.nlhc-card,.nlhc-btn{transition:none}
	.nlhc-card:hover{transform:none}
}
