/* Homepage-only spacing and layout refresh. */
.compact-home .home-hero-section { padding:28px 0 32px; }
.compact-home .home-hero { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:30px; align-items:center; }
.compact-home .comic-title { font-size:clamp(2.8rem,5.5vw,4.8rem); line-height:1.02; margin-bottom:14px; }
.compact-home .hero-tagline { margin-bottom:12px; font-size:1.3rem; }
.compact-home .hero-copy .lead { font-size:1.08rem; margin-bottom:16px; }
.compact-home .comic-panel { margin:0; }
.compact-home .comic-panel img { max-height:330px; object-fit:cover; }
.compact-home .section { padding:30px 0; }
.compact-home .section-tight { padding:20px 0; }
.compact-home h2 { font-size:clamp(1.65rem,3vw,2.6rem); margin-bottom:12px; }
.compact-home .lead { font-size:1.05rem; margin-bottom:16px; }
.compact-home .section-heading { gap:24px; margin-bottom:22px; align-items:center; }
.compact-home .new-sections-grid { grid-template-columns:170px minmax(0,1fr); gap:28px; }
.compact-home .new-avatar { width:100%; max-width:170px; }
.compact-home .new-avatar img { box-shadow:5px 5px 0 var(--ink); }
.compact-home .signoff { margin:12px 0 0; font-size:.9rem; }
.compact-home .button { padding:10px 14px; min-height:44px; font-size:.9rem; }
.compact-home .button-row { gap:10px; margin-top:14px; }
.compact-home .lane-grid.lane-grid-five { gap:14px; }
.compact-home .lane-card { padding:16px; }
.compact-home .lane-media { height:95px; margin-bottom:12px; }
.compact-home .lane-media>img { height:100%; object-fit:cover; }
.compact-home .lane-card p { font-size:.87rem; line-height:1.4; margin-bottom:0; }
.compact-home .lane-number { font-size:.8rem; }
.compact-home .podcast-panel { gap:28px; grid-template-columns:minmax(0,1fr) 240px; padding:24px; }
.compact-home .podcast-art img { max-height:140px; object-fit:cover; }
.compact-home .home-story { padding:16px 20px; border:2px solid var(--ink); border-radius:14px; background:white; }
.compact-home .home-story summary { cursor:pointer; font-weight:900; font-size:1.15rem; }
.compact-home .home-story[open] summary { margin-bottom:18px; }
.compact-home .home-story p { max-width:900px; line-height:1.6; }
.compact-home .photo-ribbon { gap:12px; }
.compact-home .photo-ribbon figure { height:100px; }
.compact-home .photo-ribbon img { height:100%; width:100%; object-fit:cover; }
.compact-home .site-footer { padding-top:30px; }
@media(max-width:740px) {
 .compact-home .home-hero { grid-template-columns:1fr; gap:20px; }
 .compact-home .comic-title { font-size:clamp(2.8rem,10vw,4.2rem); }
 .compact-home .comic-panel-wrap { width:100%; }
 .compact-home .comic-panel img { max-height:210px; width:100%; }
 .compact-home .new-sections-grid { grid-template-columns:100px minmax(0,1fr); gap:18px; align-items:start; }
 .compact-home .new-avatar { max-width:100px; margin:0; }
 .compact-home .section { padding:24px 0; }
 .compact-home .podcast-panel { grid-template-columns:1fr; }
 .compact-home .podcast-art { display:none; }
 .compact-home .lane-grid.lane-grid-five { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
 .compact-home .lane-media { height:75px; }
 .compact-home .lane-card h3 { font-size:1rem; }
 .compact-home .photo-ribbon figure { height:80px; }
}
@media(max-width:460px) {
 .compact-home .new-sections-grid { grid-template-columns:1fr; }
 .compact-home .new-avatar { width:90px; float:none; }
 .compact-home .lane-card { padding:12px; }
 .compact-home .lane-card p { font-size:.82rem; }
}

/* Compact footer: give each column a bounded share of the row. */
.compact-home .site-footer { padding:24px 0 20px; }
.compact-home .site-footer .footer-grid { grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr); gap:24px; align-items:start; }
.compact-home .site-footer .footer-brand { min-width:0; max-width:420px; }
.compact-home .site-footer .footer-brand h2 { font-size:1.35rem; line-height:1.2; letter-spacing:-.025em; margin:0 0 8px; }
.compact-home .site-footer .footer-brand p { font-size:.88rem; line-height:1.45; }
.compact-home .site-footer .footer-links { min-width:0; gap:5px; }
.compact-home .site-footer .footer-links a { font-size:.82rem; padding:6px 8px; }
.compact-home .site-footer .footer-bottom { margin-top:18px; padding-top:14px; gap:12px; font-size:.76rem; }
@media(max-width:740px) {
 .compact-home .site-footer .footer-grid { grid-template-columns:1fr; gap:16px; }
 .compact-home .site-footer .footer-links { justify-content:flex-start; }
}

/* One combined welcome area, with balanced avatar and bridge artwork. */
.compact-home .welcome-section { padding:28px 0 30px; border-bottom:2px solid var(--line); background:var(--cream); }
.compact-home .welcome-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,410px); gap:32px; align-items:center; }
.compact-home .welcome-copy h1 { font-size:clamp(2.5rem,4.5vw,4.2rem); line-height:1.03; margin:12px 0 16px; letter-spacing:-.045em; }
.compact-home .welcome-copy .lead { max-width:650px; margin:0; }
.compact-home .welcome-signoff { margin:12px 0 0; font-weight:900; color:var(--coral); }
.compact-home .welcome-art { display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:center; }
.compact-home .welcome-art figure { margin:0; min-width:0; }
.compact-home .welcome-avatar img { display:block; width:100%; height:auto; border-radius:16px; box-shadow:5px 5px 0 var(--ink); }
.compact-home .welcome-bridge img { display:block; width:100%; height:auto; border:2px solid var(--ink); border-radius:14px; box-shadow:4px 4px 0 var(--sun); }
.compact-home .welcome-bridge figcaption { margin-top:10px; font-size:.75rem; line-height:1.4; text-align:center; }
.compact-home .welcome-links { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:24px; }
.compact-home .welcome-card { display:flex; flex-direction:column; min-width:0; padding:20px; border:2px solid var(--ink); border-radius:18px; box-shadow:5px 5px 0 var(--ink); text-decoration:none; color:var(--ink); }
.compact-home .welcome-card:hover,.compact-home .welcome-card:focus-visible { transform:translateY(-2px); outline:2px solid var(--ink); outline-offset:3px; }
.compact-home .notes-card { background:#e0f7f3; }
.compact-home .wolf-card { background:#fff0d6; }
.compact-home .welcome-card-tag { font-size:.72rem; font-weight:900; text-transform:uppercase; letter-spacing:.055em; }
.compact-home .welcome-card h2 { font-size:1.65rem; margin:8px 0 10px; }
.compact-home .welcome-card p { font-size:.95rem; line-height:1.5; margin:0 0 12px; }
.compact-home .welcome-card strong { font-size:.9rem; margin-top:auto; }
@media(max-width:740px) {
 .compact-home .welcome-intro { grid-template-columns:1fr; gap:20px; }
 .compact-home .welcome-art { max-width:320px; width:100%; margin-inline:auto; }
 .compact-home .welcome-copy h1 { font-size:clamp(2.45rem,9vw,3.3rem); }
 .compact-home .welcome-links { grid-template-columns:1fr; gap:14px; }
 .compact-home .welcome-card { padding:17px; }
}
