/* Shared resource cards: homepage and About use the same source and visual system. */
.home-knowledge,.about-page .resource-section{padding:80px 6%;background:#faf9f5;color:#39243b}
.home-knowledge>header,.resource-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;align-items:end;margin-bottom:40px}
.home-knowledge>header>p,.resource-heading>p{grid-column:1/-1;font:11px/1.5 Arial,sans-serif;letter-spacing:.15em;margin:0}
.home-knowledge h2,.about-page .resource-heading h2{font:400 clamp(38px,4.6vw,68px)/1.08 Georgia,serif;letter-spacing:-.035em;margin:0}
.resource-heading em{font-weight:400}.home-knowledge>header>span,.resource-heading>span{font:14px/1.7 Arial,sans-serif;justify-self:end;max-width:350px}
.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.resource-grid .resource-card{display:flex;flex-direction:column;text-decoration:none;color:#39243b;background:#f1eee8;border:1px solid #39243b19;min-width:0;scroll-margin-top:100px}
.resource-visual{height:245px;display:flex;align-items:center;justify-content:center;position:relative;background:#dfebe9;color:#174954;overflow:hidden;border-bottom:1px solid #39243b12}
.resource-course .resource-visual{background:#37a4c1;color:#fff}.resource-guest .resource-visual{background:#e7e1e8;color:#624965}.resource-coast .resource-visual{background:#e5e8d7;color:#4d604c}
.resource-number{position:absolute;top:20px;left:25px;font:italic 20px Georgia,serif;opacity:.8}
.resource-visual svg{display:block;width:88%;height:215px;max-width:480px}
.resource-label{fill:currentColor;text-anchor:middle;font:14px Georgia,serif}
.resource-draw path{stroke-dasharray:1;animation:resource-sketch 14s cubic-bezier(.45,0,.25,1) infinite}
.resource-draw .resource-detail{animation-name:resource-detail}
@keyframes resource-sketch{0%,5%{stroke-dashoffset:1}38%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
@keyframes resource-detail{0%,20%{stroke-dashoffset:1}55%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
.resource-copy{padding:30px 32px 24px;display:flex;flex-direction:column;flex:1}
.resource-kicker{font:10px/1.5 Arial,sans-serif;letter-spacing:.15em}
.resource-grid h3{font:400 clamp(32px,3vw,46px)/1.12 Georgia,serif;letter-spacing:-.025em;margin:14px 0 17px}
.resource-grid .resource-copy p{font:14px/1.7 Arial,sans-serif;margin:0 0 28px;max-width:520px;flex:1}
.resource-copy strong{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:18px;border-top:1px solid #39243b33;font:600 13px/1.5 Arial,sans-serif}
.resource-copy b{flex-shrink:0;display:grid;place-items:center;width:34px;height:34px;border:1px solid currentColor;border-radius:50%;font:24px Arial;transition:background 180ms,color 180ms}
.resource-copy small{display:block;font:10px/1.5 Arial,sans-serif;margin-top:12px;color:#655768}
.resource-grid .resource-card:focus-visible{outline:3px solid #26798f;outline-offset:5px}
@media(hover:hover) and (pointer:fine){.resource-card:hover .resource-copy b{background:#39243b;color:#fff}}
.about-page .about-connect{background:#e5ebe7;border-top:1px solid #102f3920}.about-page .about-contact{background:#102f39}
.guest-author-note{border-top:1px solid #39243b33;padding-top:20px;font:13px/1.7 Arial,sans-serif;max-width:480px}.guest-author-note a{text-underline-offset:4px}
@keyframes coast-draw{0%{stroke-dashoffset:1}45%,90%{stroke-dashoffset:0}100%{stroke-dashoffset:1}}
.home-project-invite{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:6%;margin:0 5vw 85px;background:#39243b;color:#faf7ed;padding:65px 5%;position:relative;overflow:hidden}.invite-drawing{position:relative;aspect-ratio:1;display:grid;place-items:center}.invite-drawing>span{font:italic clamp(180px,25vw,330px)/1 Georgia;color:#d9ed65;z-index:1}.invite-drawing svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-15deg);fill:none;stroke:#c5b3c9;stroke-width:1.4;opacity:.5}.invite-drawing path{stroke-dasharray:1;animation:coast-draw 16s ease-in-out infinite}.invite-copy>p:first-child{font:11px Arial;letter-spacing:.14em}.invite-copy h2{font:400 clamp(42px,5.5vw,78px)/1.04 Georgia,serif;letter-spacing:-.03em;margin:25px 0}.invite-copy h2 em{font-weight:400;color:#d9ed65}.invite-copy>p{font:15px/1.7 Arial}.invite-links{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-top:30px}.invite-links a:first-child{background:#d9ed65;color:#39243b;display:flex;align-items:center;gap:30px;padding:19px 22px;font:600 14px Arial;text-decoration:none}.invite-links a:first-child span{font:24px Arial}.invite-links a:last-child{font:12px Arial;text-underline-offset:5px}
.motion-off .resource-draw path,.motion-off .invite-drawing path{animation-play-state:paused}
@media(max-width:800px){.home-knowledge,.about-page .resource-section{padding:55px 6%}.home-knowledge>header,.resource-heading{grid-template-columns:1fr;gap:20px}.home-knowledge>header>span,.resource-heading>span{justify-self:start}.resource-grid{grid-template-columns:1fr;gap:24px}.resource-visual{height:220px}.resource-visual svg{width:100%;height:195px}.resource-copy{padding:25px}.resource-grid h3{font-size:36px}
}
@media(prefers-reduced-motion:reduce){.resource-draw path,.invite-drawing path{animation:none;stroke-dashoffset:0}.resource-copy b{transition:none}}
