/* References: deepsearch.bio/blog and /blog/how-to-find-someone-by-name.
   Keep the product homepage focused; resources have their own reading pages. */
.footer-main.footer-resources-layout { display:grid;grid-template-columns:1.2fr .7fr 1fr .8fr;gap:32px;padding:48px 0; }
.footer-brand-column p { font-size:15px;line-height:1.8;color:#687181;margin:18px 0 0; }
.footer-main .footer-link-column { display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:0;padding:0;font-size:15px;line-height:1.6; }
.footer-link-column h2 { font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#687181;margin:0 0 6px;font-weight:600; }
.footer-link-column a { max-width:290px; }
.guides-page { max-width:840px;width:calc(100% - 48px);margin:48px auto 88px;min-height:55vh; }
.guides-heading { margin:36px 0 40px;padding-bottom:32px;border-bottom:1px solid #e7e8ed; }
.guides-heading h1 { font-size:clamp(34px,4vw,44px);line-height:1.2;letter-spacing:-1.3px;margin:16px 0; }
.guides-heading p { max-width:650px;color:#687181;font-size:19px;line-height:1.7;margin:0; }
.guide-list { list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px;padding:0;margin:0; }
.guide-list-card { display:grid;grid-template-columns:300px 1fr;max-width:none;border:1px solid #e5e7eb;border-radius:20px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s; }
.guide-cover { display:block;width:100%;height:100%;min-height:300px;object-fit:cover; }
.guide-card-copy { padding:28px; }
.resource-section-title,.resource-group>h2 { font-size:22px;letter-spacing:-.4px;margin:0 0 22px; }
.resource-groups { display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:56px; }
.resource-group ul { list-style:none;margin:0;padding:0; }
.resource-group li { border-top:1px solid #e2e5eb; }
.resource-group a { display:flex;gap:20px;align-items:flex-start;padding:22px 0; }
.resource-group h3 { font-size:19px;font-weight:600;margin:0 0 8px; }
.resource-group p { font-size:16px;line-height:1.65;color:#687181;margin:0; }
.resource-group a>.icon { flex-shrink:0;width:20px;height:20px;margin:3px 0 0 auto; }
.resource-group a:hover h3 { text-decoration:underline;text-underline-offset:4px; }
.foundation-related { display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:26px 0;margin:45px 0 28px;border-block:1px solid #e2e5eb; }
.foundation-related a { display:flex;align-items:center;gap:12px;font-size:16px; }
.foundation-related .icon { width:18px;height:18px;flex-shrink:0; }
.support-email-link { display:inline-block;font-weight:600; }
.article-body li { margin:10px 0; }
.guide-list-card:hover { border-color:#adb3bd;box-shadow:0 6px 20px #17192306; }
.guide-category { font-size:13px;color:#697382; }
.guide-list-card h2 { font-size:25px;line-height:1.35;margin:14px 0;letter-spacing:-.5px; }
.guide-list-card p { font-size:17px;color:#687181;line-height:1.7;margin:0; }
.guide-read { display:flex;align-items:center;gap:12px;margin-top:26px;font-size:16px;font-weight:600; }
.article-page { max-width:760px;width:calc(100% - 48px);margin:40px auto 80px; }
.article-breadcrumb { display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:14px;line-height:1.6;color:#687181;margin-bottom:32px; }
.article-breadcrumb a:hover { text-decoration:underline; }
.article-heading { padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid #e7e8ed; }
.article-heading h1 { font-size:clamp(32px,4vw,44px);line-height:1.18;letter-spacing:-1.2px;margin:16px 0 20px;text-wrap:balance; }
.article-heading>p { font-size:19px;line-height:1.75;color:#687181;margin:0; }
.article-body { font-size:18px;line-height:1.85;color:#434c5a;overflow-wrap:anywhere; }
.article-body h2 { font-size:28px;line-height:1.35;letter-spacing:-.5px;margin:48px 0 20px;color:#141923; }
.article-body h3 { font-size:22px;line-height:1.45;margin:32px 0 16px;color:#141923; }
.article-body p { margin:18px 0; }
.article-body a { color:#26354d;text-decoration:underline;text-underline-offset:3px; }
.article-body section { scroll-margin-top:28px; }
.article-toc { border-block:1px solid #e5e7eb;margin:28px 0;background:transparent; }
.article-toc summary { display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;font-size:16px;padding:16px 0;font-weight:500; }
.article-toc summary::-webkit-details-marker { display:none; }
.article-toc[open] summary .icon { transform:rotate(180deg); }
.article-toc nav { display:grid;gap:10px;padding:0 0 20px; }
.article-toc button { border:0;background:none;padding:0;text-align:left;font-size:16px;line-height:1.5;color:#536174; }
.article-toc button:hover { color:#141923;text-decoration:underline; }
.guide-table-wrap { overflow-x:auto;margin:26px 0;border:1px solid #e2e5eb;border-radius:12px; }
.article-body table { width:100%;border-collapse:collapse;font-size:16px;line-height:1.6;background:#fff; }
.article-body th,.article-body td { padding:16px;min-width:150px;text-align:left;border-bottom:1px solid #e5e7ed;vertical-align:top; }
.article-body th { background:#f5f6f8;color:#1c2431; }
.article-search { padding:22px;border:1px solid #e2e5eb;border-radius:16px;background:#f7f8fa;margin:28px 0; }
.article-search label { display:block;font-size:18px;font-weight:600;line-height:1.4;margin-bottom:14px;color:#141923; }
.article-search>div { display:flex;gap:10px; }
.article-search input { min-width:0;flex:1;border:1px solid #dfe3ea;border-radius:10px;padding:14px;font:inherit;font-size:17px;background:#fff; }
.article-search button { gap:10px;font-size:16px;padding:14px 20px; }
.article-search .icon { width:20px;height:20px;flex-shrink:0; }
#article-results:not(:empty) { padding:24px 0;border-block:1px solid #e2e5eb;scroll-margin-top:25px; }
#article-results .section-wrap { width:100%;max-width:100%; }
#article-results .result-unlock-bar { position:static; }
#article-results>h2 { font-size:26px; }
.article-body+.article-search { margin-bottom:42px; }
@media(max-width:700px) {
 .footer-main.footer-resources-layout { grid-template-columns:1fr 1fr;gap:28px 24px;padding:32px 0; }
 .footer-brand-column { grid-column:1/-1; }
 .footer-main .footer-link-column { font-size:14px;width:auto; }
 .guides-page,.article-page { margin-top:28px; }
 .article-search { padding:18px; }
 .article-search>div { flex-direction:column; }
 .article-body h2 { font-size:25px; }
 .guide-list-card { grid-template-columns:1fr; }
 .guide-cover { height:220px;min-height:0; }
 .guide-card-copy { padding:24px; }
 .resource-groups { grid-template-columns:1fr;gap:32px;margin-top:40px; }
 .foundation-related { grid-template-columns:1fr; }
 .guide-list-card h2 { font-size:23px; }
}
.public-pricing { max-width: 1200px; }
.public-plan-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px; margin-bottom: 64px; }
.public-plan { border: 1px solid #e4e6eb; border-radius: 24px; background: #fff; padding: 32px; }
.public-plan h2 { font-size: 24px; margin: 0 0 16px; }
.public-plan p { font-size: 18px; line-height: 1.65; }
.public-plan .public-plan-price { font-size: 38px; color: #111827; font-weight: 600; }
.public-plan-price span { font-size: 18px; font-weight: 400; }
.public-plan .primary-button { display: inline-flex; gap: 12px; margin-top: 12px; text-decoration: none; }
@media (max-width: 680px) { .public-plan-grid { grid-template-columns: 1fr; } .public-plan { padding: 24px; } }
