/* Homepage-only hierarchy; all content remains in document flow. */
.home-layout-clear { background:#f7f8f5; }
.home-layout-clear main { --home-ink:#183b2d; --home-line:#dce4dc; }
.home-layout-clear main > .section { width:min(1180px,calc(100% - 48px)); margin-inline:auto; padding-block:64px; }
.home-layout-clear .growth-search-hero { width:min(1180px,calc(100% - 48px)); margin:40px auto 32px; padding:44px 48px; border:1px solid #dde5dc; border-radius:16px; background:#fff; box-shadow:0 12px 40px #183b2d06; }
.home-layout-clear .growth-search-hero > p:first-child { color:#8a6636; font-size:16px; letter-spacing:.08em; font-weight:700; }
.home-layout-clear .growth-search-hero h1 { color:var(--home-ink); font-family:'Songti SC','STSong',serif; font-size:clamp(30px,3.4vw,48px); line-height:1.35; margin:14px 0 20px; }
.home-layout-clear .growth-search-hero p { line-height:1.8; color:#55655c; }
.home-layout-clear .growth-search-hero form { max-width:800px; margin-top:24px; }
.home-layout-clear .growth-query-row { display:flex; gap:12px; }
.home-layout-clear .growth-query-row input { flex:1; min-width:0; min-height:54px; border:1px solid #b7c6bc; border-radius:8px; padding:12px 16px; font-size:18px; background:#fafbf9; }
.home-layout-clear .growth-query-row .button { min-height:54px; border-radius:8px; padding-inline:26px; }
.home-layout-clear .growth-search-hero a { color:#24523c; text-decoration:underline; text-underline-offset:4px; }
.home-layout-clear .campaign-carousel-shell { width:min(1180px,calc(100% - 48px)); margin:0 auto 16px; overflow:hidden; border-radius:16px; }
.home-layout-clear .campaign-carousel { min-height:360px; }
.home-layout-clear .campaign-slide { min-height:360px; }
.home-layout-clear .campaign-slide-copy { padding:40px 60px; min-height:360px; box-sizing:border-box; }
.home-layout-clear .campaign-slide-copy h2 { font-size:clamp(30px,3.5vw,46px); max-width:620px; }
.home-layout-clear .section-heading,.home-layout-clear .family-reading-head,.home-layout-clear .global-roots-head { margin-bottom:30px; }
.home-layout-clear .section-heading h2,.home-layout-clear .family-reading-head h2,.home-layout-clear .global-roots-head h2,.home-layout-clear #library-entry h2 { font-family:'Songti SC','STSong',serif; font-size:clamp(28px,2.7vw,38px); color:var(--home-ink); line-height:1.4; }
.home-layout-clear .section-heading p,.home-layout-clear .global-roots-head p,.home-layout-clear .family-reading-head p { max-width:850px; font-size:17px; line-height:1.85; }
.home-layout-clear .eyebrow { color:#8a6636; font-weight:700; letter-spacing:.1em; }
.home-layout-clear .home-business-grid { gap:24px; }
.home-layout-clear .home-business-item { padding:32px; border:1px solid var(--home-line); border-top:4px solid #24523c; border-radius:12px; box-shadow:none; }
.home-layout-clear .home-business-item h3 { font-size:28px; }
.home-layout-clear .home-business-item ul { padding-block:16px; border-block:1px solid #edf0e9; }
.home-layout-clear .home-business-actions { gap:16px; }
.home-layout-clear .memory-film-section { border-top:1px solid var(--home-line); }
.home-layout-clear .memory-video-card { display:block; border:1px solid var(--home-line); border-radius:12px; overflow:hidden; background:#fff; }
.home-layout-clear .memory-video-player { display:block; width:100%; aspect-ratio:16/9; height:auto; min-height:0; border:0; }
.home-layout-clear .memory-video-card > div { padding:22px 28px; }
.home-layout-clear .memory-film-grid { gap:24px; margin-top:28px; }
.home-layout-clear .memory-film-grid article { box-shadow:none; border-color:var(--home-line); background:#fff; }
.home-layout-clear .content-band { background:#edf2eb; border-block:1px solid #dde6db; }
.home-layout-clear .content-band .section { width:min(1180px,calc(100% - 48px)); margin:auto; padding-block:44px; }
.home-layout-clear .step-card { box-shadow:none; border:0; background:transparent; }
.home-layout-clear .step-card span { color:#8a6636; }
.home-layout-clear .platform-note { border:1px solid var(--home-line); border-radius:12px; background:white; padding:28px; box-shadow:none; }
.home-layout-clear .home-proof-band { background:#193d2d; gap:40px; padding-block:28px; }
.home-layout-clear #library-entry { margin-top:48px; padding:36px; background:#fff; border:1px solid var(--home-line); border-left:4px solid #8a6636; border-radius:12px; }
.home-layout-clear #library-entry p { color:#55655c; font-size:17px; line-height:1.85; }
.home-layout-clear .global-roots-grid,.home-layout-clear .surname-region-grid,.home-layout-clear .growth-grid { gap:18px; }
.home-layout-clear .global-roots-grid > a,.home-layout-clear .surname-region-grid > a,.home-layout-clear .growth-card { padding:24px; background:white; border:1px solid var(--home-line); border-radius:10px; box-shadow:none; }
.home-layout-clear .global-roots-grid strong,.home-layout-clear .surname-region-grid strong,.home-layout-clear .growth-card strong { font-size:20px; }
.home-layout-clear .global-roots-grid p,.home-layout-clear .surname-region-grid p,.home-layout-clear .growth-card p { font-size:16px; line-height:1.8; }
.home-layout-clear .surname-region-entry { border-top:1px solid var(--home-line); }
.home-layout-clear .family-reading-section { border-top:1px solid var(--home-line); }
.home-layout-clear .home-news-grid { gap:24px; }
.home-layout-clear .home-news-column { min-width:0; padding:24px; border:1px solid var(--home-line); background:#fff; border-radius:12px; }
.home-layout-clear .home-news-column + .home-news-column { border-left:1px solid var(--home-line); }
.home-layout-clear .home-news-lead img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:6px; }
.home-layout-clear .home-news-lead strong { font-size:22px; line-height:1.5; }
.home-layout-clear .home-news-lead p { font-size:16px; line-height:1.8; }
.home-layout-clear .guestbook-section { border-top:1px solid var(--home-line); }
.home-layout-clear a:focus-visible,.home-layout-clear button:focus-visible,.home-layout-clear input:focus-visible { outline:3px solid #967241; outline-offset:4px; }
@media (max-width:760px) {
 .home-layout-clear main > .section,.home-layout-clear .content-band .section { width:calc(100% - 32px); padding-block:36px; }
 .home-layout-clear .growth-search-hero { width:calc(100% - 32px); margin:20px auto; padding:28px 22px; }
 .home-layout-clear .growth-query-row { flex-direction:column; }
 .home-layout-clear .growth-query-row .button { width:100%; }
 .home-layout-clear .campaign-carousel-shell { width:calc(100% - 32px); }
 .home-layout-clear .campaign-slide-copy { padding:28px 36px 48px; min-height:340px; width:100%; box-sizing:border-box; }
 .home-layout-clear .campaign-carousel,.home-layout-clear .campaign-slide { min-height:340px; }
 .home-layout-clear .home-business-grid,.home-layout-clear .home-news-grid { grid-template-columns:1fr; }
 .home-layout-clear .home-business-item,.home-layout-clear .home-news-column { padding:24px; }
 .home-layout-clear .home-business-item h3 { font-size:25px; }
 .home-layout-clear .home-business-actions .button { width:100%; }
 .home-layout-clear .memory-video-card > div { padding:20px; }
 .home-layout-clear .memory-film-grid { grid-template-columns:1fr; gap:12px; }
 .home-layout-clear .global-roots-grid,.home-layout-clear .surname-region-grid,.home-layout-clear .growth-grid { grid-template-columns:1fr; gap:12px; }
 .home-layout-clear .steps-grid { grid-template-columns:1fr 1fr; gap:18px; }
 .home-layout-clear .step-card { padding:12px 0; }
 .home-layout-clear #library-entry { margin-top:28px; padding:24px; }
 .home-layout-clear .platform-note { padding:24px; }
 .home-layout-clear .home-proof-band { gap:20px; }
}
/* Consistent outer edges and compact search entry. */
.home-layout-clear main > .section,
.home-layout-clear .growth-search-hero,
.home-layout-clear .campaign-carousel-shell,
.home-layout-clear .content-band > .section {
  box-sizing:border-box;
  width:min(1180px,calc(100% - 48px));
  max-width:1180px;
  margin-inline:auto;
}
.home-layout-clear .growth-search-hero {
  margin-block:24px;
  padding:26px 32px;
}
.home-layout-clear .growth-search-hero > p:first-child { margin:0 0 8px; }
.home-layout-clear .growth-search-hero h1 { font-size:clamp(28px,2.8vw,38px); margin:0 0 10px; }
.home-layout-clear .growth-search-hero > p { margin-block:10px; }
.home-layout-clear .growth-search-hero form { margin-top:14px; max-width:900px; }
.home-layout-clear .growth-search-hero form label { display:block; margin-bottom:6px; }
.home-layout-clear .growth-query-row input,
.home-layout-clear .growth-query-row .button { min-height:48px; }
.home-layout-clear .growth-search-hero > p:last-child { margin-bottom:0; }
@media (max-width:760px) {
 .home-layout-clear main > .section,
 .home-layout-clear .growth-search-hero,
 .home-layout-clear .campaign-carousel-shell,
 .home-layout-clear .content-band > .section { width:calc(100% - 32px); }
 .home-layout-clear .growth-search-hero { margin-block:16px; padding:20px; }
 .home-layout-clear .growth-search-hero h1 { font-size:28px; }
 .home-layout-clear .growth-query-row { gap:8px; }
}
