/* Shared section rhythm. Internal card and form boundaries stay local. */
main > section.section{border-top:0;border-bottom:0}
main > section.section:last-of-type{padding-bottom:48px}
.site-footer.site-footer{max-width:1224px;width:calc(100% - 96px);margin:32px auto 0;border-top:1px solid var(--line)}
.site-footer .footer-details,.site-footer .footer-profiles{border-top:0}
.site-footer .footer-bottom{border-top:0;padding-top:8px}
.site-footer .footer-hello{border-bottom:0}
body:has(.home-contact) .site-footer .footer-heading{display:none}
body:has(.home-contact) .site-footer{padding-top:20px}
body:has(.home-contact) .site-footer .footer-details{padding-top:15px}
body .button.secondary.button{background:transparent;color:var(--ink);border:1px solid var(--ink);box-shadow:none}
body .button.secondary.button:hover{background:var(--line);color:var(--ink)}

/* Open toolkit: categories above, labelled logos below. */
.home-tool-section{padding-top:50px;padding-bottom:50px}
.toolkit-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:24px}
.toolkit-heading h2{font-size:clamp(32px,3.4vw,48px);line-height:1.15;margin:10px 0 0}
.toolkit-heading>p{max-width:320px;font-size:14px;line-height:1.7;color:var(--muted);margin:0}
.home-tool-section .tool-product-link{font-size:12px;margin:0 0 22px;color:var(--muted)}
.home-tool-section .tool-browser{display:block;border:0}
.home-tool-section .tool-tabs{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;border:0;padding:0;margin:0 0 22px}
.home-tool-section .tool-tabs button{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;border:1px solid var(--line);border-radius:5px;background:transparent;padding:11px 13px;font:500 12px/1.4 Satoshi,sans-serif;color:var(--muted);min-height:46px;text-align:left}
.home-tool-section .tool-tabs button img{display:block;width:20px;height:20px;object-fit:contain;background:#fff;border-radius:3px;padding:2px;filter:none}
.home-tool-section .tool-tabs button[aria-selected=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.home-tool-section .tool-tabs button:hover{border-color:var(--accent)}
.home-tool-section .tool-tabs button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.home-tool-section .tool-panels{display:block;padding:22px 24px;border-radius:5px;border:0;background:color-mix(in srgb,var(--ink) 3%,var(--bg));min-height:240px}
.home-tool-section .tool-panel{width:100%}
.home-tool-section .tool-panel[hidden]{display:none}
.home-tool-section .tool-panel-purpose{font-size:13px;color:var(--muted);margin:0 0 22px;line-height:1.6;max-width:65ch}
.home-tool-section .tool-panel ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:20px 16px;padding:0;margin:0;list-style:none;align-items:start}
.home-tool-section .tool-logo{display:flex;flex-direction:column;align-items:center;gap:10px;width:auto;max-width:none;min-height:74px;height:auto;margin:0;padding:0;background:none;border:0;box-shadow:none;cursor:default}
.home-tool-section .tool-logo img{width:32px;height:32px;padding:6px;background:#fff;border-radius:5px;object-fit:contain;box-sizing:content-box;filter:none!important}
.home-tool-section .tool-label{max-width:110px;width:auto;font-size:11px;line-height:1.4;text-align:center;color:var(--ink)}
.home-tool-section .tool-initial{display:grid;place-items:center;width:44px;height:44px;border-radius:5px;background:var(--bg);font:500 12px Satoshi,sans-serif}
.home-capabilities .home-ai-note{border:0}
.capability-next{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:20px}
.capability-next .capability-link{margin:0;flex:none}
.home-speaking-invite{display:grid;grid-template-columns:105px minmax(0,1fr);gap:14px;align-items:center;max-width:530px;text-decoration:none!important}
.home-speaking-invite>img{width:105px;height:120px;object-fit:contain;object-position:center bottom;filter:grayscale(1);transition:filter .3s,transform .3s}
.home-speaking-invite:hover>img{filter:grayscale(0);transform:rotate(-2deg)}
.home-speaking-invite>span{display:grid;gap:5px}
.home-speaking-invite small{font-size:9px;letter-spacing:1.1px;color:var(--muted)}
.home-speaking-invite strong{font-size:19px;font-weight:500;line-height:1.3}
.home-speaking-invite span span{font-size:12px;color:var(--muted);line-height:1.5}
.home-speaking-invite b{font-size:12px;font-weight:500;margin-top:5px}
.home-contact .home-contact-actions{gap:12px}
.home-contact .text-link{font-size:13px;justify-content:flex-start}
.portfolio-build-note{border-top:0}
.portfolio-build-note .activity-paper{max-width:100%}
@media(max-width:1000px){.toolkit-heading{align-items:start}.capability-next{gap:20px}.home-speaking-invite{grid-template-columns:85px minmax(0,1fr)}.home-speaking-invite>img{width:85px;height:110px}}
@media(max-width:800px){.site-footer.site-footer{width:calc(100% - 48px)}}
@media(max-width:760px){
 .hero-balanced .hero-bottom{display:contents}
 .hero-balanced .hero-project-actions{grid-column:1/-1;grid-row:4;margin-top:0;width:100%}
 .hero-balanced .availability-meta{grid-column:1/-1;grid-row:5;justify-self:end;max-width:340px}
 .hero-balanced .collage{grid-row:6}
 .hero-balanced .collage-controls{grid-row:7}
 .toolkit-heading{display:block;margin-bottom:20px}
 .toolkit-heading>p{margin-top:16px;max-width:45ch}
 .home-tool-section .tool-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0;max-width:100%}
 .home-tool-section .tool-tabs button{font-size:11px;padding:10px;min-height:44px;min-width:0;white-space:normal}
 .home-tool-section .tool-panels{padding:20px 16px;min-height:0}
 .home-tool-section .tool-panel ul{grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:20px 10px}
 .home-tool-section .tool-logo{min-height:78px}
 .home-tool-section .tool-label{font-size:10px}
 .home-tool-section .tool-logo img{width:28px;height:28px}
 .capability-next{align-items:start;flex-direction:column;gap:20px}
 .home-speaking-invite{max-width:none;width:100%;grid-template-columns:88px minmax(0,1fr)}
 .home-speaking-invite>img{width:88px;height:110px}
 .home-speaking-invite strong{font-size:19px}
 main > section.section:last-of-type{padding-bottom:32px}
 .home-contact .home-contact-actions .button{font-size:12px;padding:12px 10px}
}
@media(max-width:500px){.site-footer.site-footer{width:calc(100% - 40px);margin-top:24px}.footer-details{padding-top:12px}}
@media(prefers-reduced-motion:reduce){.home-speaking-invite>img{transition:none}.home-speaking-invite:hover>img{transform:none}}
