/* Step 6: scoped to the homepage's method, journal, contact and footer. */
.home-refinement { background:var(--home-bg); }
.home-continuation-inner { width:min(1240px,calc(100% - 96px)); margin:auto; }
.home-method,.home-journal { color:var(--home-text); padding:76px 0; background:var(--home-bg); scroll-margin-top:28px; }
.home-continuation-heading { display:grid; grid-template-columns:1.25fr 1fr; gap:80px; align-items:end; margin-bottom:42px; }
.home-method .home-continuation-eyebrow,.home-journal .home-continuation-eyebrow,.home-contact .home-continuation-eyebrow { color:var(--home-accent); font:600 12px/1.5 'DM Sans',sans-serif; letter-spacing:.1em; margin:0 0 20px; }
.home-method h2,.home-journal h2,.home-contact h2 { color:var(--home-text); font:650 clamp(32px,3.5vw,46px)/1.18 'Manrope',sans-serif; letter-spacing:-.045em; margin:0; }
.home-method h2 span,.home-journal h2 span,.home-contact h2 span { color:var(--home-accent); }
.home-continuation-heading > p { color:var(--home-muted); font:400 17px/1.7 'DM Sans',sans-serif; max-width:440px; margin:0 0 4px; }
.home-method-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding:0; margin:0; list-style:none; border-top:1px solid #3d4b5e; }
.home-method-grid > li { display:flex; flex-direction:column; min-width:0; margin:0; padding:28px 25px 0; border-left:1px solid #3d4b5e; }
.home-method-grid > li:first-child { padding-left:0; border-left:0; }
.home-method-grid > li:last-child { padding-right:0; }
.home-method-number { color:var(--home-accent); font:500 13px/1.5 'DM Sans',sans-serif; margin-bottom:24px; }
.home-method h3 { color:var(--home-text); font:600 23px/1.35 'Manrope',sans-serif; letter-spacing:-.035em; margin:0 0 18px; min-height:62px; }
.home-method-grid p { color:var(--home-muted); font:400 15px/1.75 'DM Sans',sans-serif; margin:0 0 28px; }
.home-method-result { border-top:1px solid #3d4b5e; padding-top:20px; margin-top:auto; }
.home-method-result span { display:block; color:var(--home-accent); font:500 12px/1.5 'DM Sans',sans-serif; margin-bottom:9px; }
.home-method-result strong { display:block; color:var(--home-text); font:500 14px/1.65 'DM Sans',sans-serif; }
.home-journal { background:var(--home-panel); }
.home-journal .section-head { align-items:flex-end; margin-bottom:36px; }
.home-journal .grid3 { gap:34px; }
.home-journal .article-card { min-width:0; background:transparent; border:0; border-top:1px solid #465369; border-radius:0; box-shadow:none; padding:26px 0 0; }
.home-journal .meta { color:#b8c3d3; font:500 11px/1.6 'DM Sans',sans-serif; letter-spacing:.06em; }
.home-journal .article-card h3 { color:var(--home-text); font:600 23px/1.4 'Manrope',sans-serif; letter-spacing:-.03em; margin:18px 0 16px; }
.home-journal .article-card h3 a { color:inherit; }
.home-journal .article-card h3 a:hover { color:var(--home-accent); }
.home-journal .article-card p { color:var(--home-muted); font:400 15px/1.75 'DM Sans',sans-serif; margin:0 0 18px; }
.home-journal .textlink { color:var(--home-accent); font:500 14px/1.5 'DM Sans',sans-serif; min-height:48px; display:inline-flex; align-items:center; }
.home-journal .textlink:hover { text-decoration:underline; text-underline-offset:5px; }
.home-contact { background:var(--home-bg); color:var(--home-text); padding:76px 0; scroll-margin-top:28px; }
.home-contact .home-continuation-inner { display:grid; grid-template-columns:1fr auto; align-items:center; gap:80px; }
.home-contact h2 { margin-bottom:24px; }
.home-contact p:not(.home-continuation-eyebrow) { color:var(--home-muted); font:400 17px/1.75 'DM Sans',sans-serif; margin:0; max-width:600px; }
.home-contact-actions { display:flex; flex-direction:column; align-items:stretch; gap:14px; }
.home-contact-primary { display:inline-flex; align-items:center; justify-content:center; gap:28px; min-height:54px; padding:14px 24px; border:1px solid var(--home-accent); border-radius:7px; background:var(--home-accent); color:var(--home-bg); font:600 15px/1.5 'DM Sans',sans-serif; }
.home-contact-primary:hover { background:#ffca9f; }
.home-contact-secondary { display:inline-flex; align-items:center; justify-content:center; gap:15px; min-height:48px; color:var(--home-text); font:500 14px/1.5 'DM Sans',sans-serif; text-decoration:underline; text-underline-offset:5px; text-decoration-color:#637083; }
.home-contact-secondary:hover { color:var(--home-accent); }
.home-refinement .home-footer { width:min(1240px,calc(100% - 96px)); margin:0 auto; padding:46px 0 95px; color:var(--home-text); background:transparent; border-top:1px solid #3d4b5e; }
.home-footer .foot-grid { padding:0 0 30px; }
.home-footer .brand-logo { width:156px; height:52px; mix-blend-mode:normal; }
.home-footer .foot-grid p,.home-footer .social-links > span,.home-footer .locale-attribution,.home-footer .foot-bottom { color:var(--home-muted); }
.home-footer .foot-grid p { font-size:14px; line-height:1.75; }
.home-footer a { color:var(--home-text); }
.home-footer a:hover { color:var(--home-accent); }
.home-footer .eyebrow { color:var(--home-accent); }
.home-footer .eyebrow::before { display:none; }
.home-footer .social-links,.home-footer .foot-bottom { border-color:#3d4b5e; }
.home-footer .social-link img { filter:brightness(0) invert(1); }
.home-footer .foot-grid a:not(.brand) { min-height:34px; }
.home-footer .locale-attribution { font-size:11px; }
.home-journal a:focus-visible,.home-contact a:focus-visible,.home-footer a:focus-visible { outline:3px solid var(--home-accent); outline-offset:5px; }
.home-contact-primary:focus-visible { outline-color:#fff; }
@media(max-width:1100px) {
 .home-continuation-inner,.home-refinement .home-footer { width:calc(100% - 64px); }
 .home-continuation-heading,.home-contact .home-continuation-inner { gap:36px; }
 .home-method-grid > li { padding-inline:18px; }
 .home-method h3 { font-size:21px; }
 .home-journal .grid3 { gap:24px; }
}
@media(max-width:900px) {
 .home-method-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 0; }
 .home-method-grid > li:nth-child(3) { padding-left:0; border-left:0; border-top:1px solid #3d4b5e; }
 .home-method-grid > li:nth-child(4) { border-top:1px solid #3d4b5e; }
 .home-method-grid > li:nth-child(2) { padding-right:0; }
 .home-method h3 { min-height:0; }
 .home-method,.home-journal,.home-contact { padding-block:55px; }
 .home-journal .grid3 { grid-template-columns:1fr; gap:30px; }
 .home-journal .article-card { display:grid; grid-template-columns:1fr 1fr; column-gap:32px; }
 .home-journal .article-card .meta { grid-column:1; }
 .home-journal .article-card h3 { grid-column:1; grid-row:2/4; margin-bottom:0; }
 .home-journal .article-card p { grid-column:2; grid-row:2; margin-top:18px; }
 .home-journal .article-card .textlink { grid-column:2; }
}
@media(max-width:700px) {
 .home-continuation-heading { grid-template-columns:1fr; gap:22px; margin-bottom:30px; }
 .home-contact .home-continuation-inner { grid-template-columns:1fr; gap:28px; }
 .home-journal .section-head { flex-direction:column; align-items:flex-start; gap:14px; }
 .home-contact-actions { align-items:flex-start; }
}
@media(max-width:600px) {
 .home-continuation-inner,.home-refinement .home-footer { width:calc(100% - 40px); }
 .home-method,.home-journal,.home-contact { padding-block:44px; }
 .home-method h2,.home-journal h2,.home-contact h2 { font-size:32px; }
 .home-continuation-heading > p,.home-contact p:not(.home-continuation-eyebrow) { font-size:16px; }
 .home-method-grid { grid-template-columns:1fr; gap:0; border:0; }
 .home-method-grid > li,.home-method-grid > li:first-child,.home-method-grid > li:last-child { display:grid; grid-template-columns:28px 1fr; gap:0 14px; padding:25px 0; border-left:0; border-top:1px solid #3d4b5e; }
 .home-method-grid > li:last-child { padding-bottom:0; }
 .home-method-number { grid-column:1; grid-row:1; padding-top:4px; margin:0; }
 .home-method h3 { grid-column:2; margin-bottom:14px; font-size:23px; }
 .home-method-grid p { grid-column:2; margin-bottom:20px; }
 .home-method-result { grid-column:2; padding-top:16px; }
 .home-journal .article-card { display:flex; }
 .home-journal .article-card h3 { margin-bottom:16px; }
 .home-journal .article-card p { margin-top:0; }
 .home-contact-actions { align-items:stretch; }
 .home-contact-secondary { font-size:13px; }
 .home-footer .foot-grid { gap:24px; }
 .home-footer .foot-grid > div { min-width:0; }
 .home-footer .foot-grid > div:last-child { grid-column:1/-1; }
 .home-refinement .home-footer { padding-top:36px; padding-bottom:100px; }
}
/* The homepage does not load the agency stylesheet: define its social row here. */
.home-footer .social-links { display:flex; align-items:center; flex-wrap:wrap; gap:22px; padding:24px 0 18px; border-top:1px solid #3d4b5e; }
.home-footer .social-links > span { font:400 13px/1.6 'DM Sans',sans-serif; margin-right:auto; }
.home-footer .social-link { display:inline-flex; gap:8px; align-items:center; min-height:44px; font:400 13px/1.5 'DM Sans',sans-serif; }
.home-footer .social-link img { object-fit:contain; }
.home-footer .locale-attribution { margin-bottom:15px; line-height:1.6; }
.home-footer .locale-attribution a { text-decoration:underline; }
.home-method-result { min-height:96px; }
@media(max-width:600px) {
 .home-footer .social-links { gap:12px 20px; }
 .home-footer .social-links > span { width:100%; }
 .home-method-result { min-height:0; }
}
