/* Home editorial additions only; existing global typography and components remain unchanged. */
/* Natural FAQ flow permits section-bounded sticky positioning without resizing its photograph. */
@media (min-width: 901px) {
	.home-page .faq-layout { align-items: start; }
	.home-page .home-faq-media { position: sticky; top: var(--faq-sticky-top, var(--header)); align-self: start; }
	.admin-bar.home-page .home-faq-media { top: var(--faq-sticky-top, calc(var(--header) + 32px)); }
}
@media (min-width: 1181px) {
	.home-page .faq-section { height: auto; overflow: visible; padding-block: 124px 127px; }
	.home-page .faq-section .container--narrow { height: auto; }
	.home-page .faq-head { position: static; margin-bottom: 64px; }
	.home-page .faq-layout { position: relative; top: auto; left: auto; }
}
.home-why { isolation: isolate; color: #f4f1e9; background-color: #090909; background-position: center; background-size: cover; }
.home-why::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(0,0,0,.93) 0%, rgba(0,0,0,.9) 58%, rgba(0,0,0,.16) 100%); }
.home-why__content { width: 64%; max-width: 1000px; }
.home-why .eyebrow { color: #c8aa70; }
.home-why__body { max-width: 620px; margin-top: 24px; color: #dedbd5; }
.home-why__columns { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; margin-top: 64px; }
.home-why__benefits { display: grid; align-content: start; gap: 32px; }
.home-why__benefit { display: flex; gap: 16px; align-items: flex-start; min-width: 0; }
.home-why__icon { flex: 0 0 38px; width: 38px; height: 38px; margin-top: 5px; }
.home-why__icon img { width: 100%; height: 100%; object-fit: contain; }
.home-why__benefit h3 { color: #f6f1e5; }
.home-why__benefit p { margin-top: 14px; color: #dedbd5; }
.home-page .home-gallery-intro { max-width: 820px; margin: 24px auto 0; color: #dedbd5; font-size: 16px; line-height: 1.7; }
.home-categories { background: var(--ivory); color: var(--ink); }
.home-categories__heading { display: flex; justify-content: space-between; align-items: center; gap: 64px; margin-bottom: 64px; }
.home-categories .eyebrow { color: #746447; }
.home-categories .eyebrow::after { display: none; }
.home-categories__intro { flex: 0 1 390px; max-width: 390px; padding-left: 32px; border-left: 1px solid #c3a66b; }
.home-categories__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.home-categories__card { display: flex; flex-direction: column; min-width: 0; }
.home-categories__image { display: block; width: 100%; height: auto; aspect-ratio: 213 / 179; object-fit: cover; margin-bottom: 24px; }
.home-categories__card h3 { margin-bottom: 14px; }
.home-categories__card > p { margin-bottom: 24px; }
.home-categories__link { align-self: flex-start; display: inline-flex; align-items: center; gap: 24px; margin-top: auto; color: #806322; min-height: 44px; }
.home-categories__link > span[aria-hidden] { font-size: 22px; }
.home-categories__link:hover { color: #49350b; }
.home-categories__link:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.home-why, .home-categories { overflow-wrap: anywhere; }
@media (max-width: 1180px) {
	.home-why__content { width: 68%; }
	.home-why__columns { gap: 26px; }
	.home-categories__grid { gap: 24px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.home-categories__heading { margin-inline: 0; gap: 36px; }
}
@media (max-width: 900px) {
	.home-why { background-position: 70% center; }
	.home-why::before { background: rgba(0,0,0,.88); }
	.home-why__content { width: 100%; max-width: none; }
	.home-why__body { max-width: 620px; }
	.home-categories__heading { align-items: flex-start; flex-direction: column; gap: 28px; margin-bottom: 38px; }
	.home-categories__intro { flex: none; max-width: 620px; }
	.home-categories__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 38px 24px; }
}
@media (max-width: 600px) {
	.home-why h2 br, .home-categories h2 br { display: none; }
	.home-why__columns { grid-template-columns: 1fr; gap: 28px; }
	.home-why__benefits { gap: 28px; }
	.home-categories__grid { grid-template-columns: 1fr; }
}
