.events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:32px}
.event-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink)}
.event-flyer{display:block;background:#e6e1dc;padding:20px}
.event-flyer img{width:100%;height:440px;object-fit:contain}
.event-copy{padding:32px;display:flex;flex-direction:column;gap:20px}
.event-copy h3{font-size:clamp(30px,3vw,42px)}
.event-copy .eyebrow{color:var(--green)}
.event-copy p:not(.eyebrow){color:var(--muted);font-size:14px}
.event-copy .button{align-self:flex-start;max-width:100%;gap:14px}
.resources{margin-top:72px;padding-top:48px;border-top:1px solid var(--line)}
.resources .section-heading h3{margin:16px 0}
.resources .section-heading>p:not(.eyebrow){color:inherit;opacity:.85}
.resource-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.resource-card{display:flex;flex-direction:column;padding:26px;border:1px solid var(--line);border-top:3px solid var(--clay);border-radius:14px;background:var(--paper);color:var(--ink)}
.resource-card:nth-child(2){border-top-color:var(--green)}
.resource-card:nth-child(3){border-top-color:var(--violet)}
.resource-card:nth-child(4){border-top-color:var(--lime)}
.resource-card .eyebrow{font-size:9px;color:var(--green)}
.resource-card h4{font-family:'Libre Caslon Display',Georgia,serif;font-size:29px;line-height:1.15;font-weight:400;margin:22px 0 16px}
.resource-card>p:not(.eyebrow){font-size:13px;color:var(--muted)}
.resource-card .text-link{margin-top:auto;padding-top:26px;justify-content:space-between;gap:10px}
[data-theme="dark"] .event-card,[data-theme="dark"] .resource-card{background:#193125;border-color:#d4e1bf40}
[data-theme="dark"] .event-flyer{background:#102218}
[data-theme="dark"] .resource-card .eyebrow,[data-theme="dark"] .event-copy .eyebrow{color:#aed768}
@media(max-width:1100px){.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.events-grid{grid-template-columns:1fr;gap:24px}.event-flyer{padding:12px}.event-flyer img{height:auto;max-height:540px}.event-copy{padding:25px}.resources{margin-top:48px}.resource-grid{grid-template-columns:1fr}.resource-card{padding:25px}}
.path-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.path-grid-two{grid-template-columns:1fr}}
.resource-cover{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:8px;margin-bottom:24px}
.course-cover-wrap{display:flex;flex-direction:column;gap:24px}
.course-format{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding-bottom:20px;border-bottom:1px solid #233b2b30;color:#233b2b}
.course-online-label{font-family:'Libre Caslon Display',Georgia,serif;font-size:clamp(48px,5.5vw,76px);font-weight:400;letter-spacing:-.025em;line-height:1}
.course-format-note{font-size:11px;line-height:1.6;text-align:right;flex-shrink:0}
.course-cover{width:100%;height:clamp(300px,32vw,400px);object-fit:cover;object-position:50% 48%;background:transparent;border-radius:12px}
[data-theme="dark"] .course-format{color:#d4e1bf;border-bottom-color:#d4e1bf45}
@media(max-width:380px){.course-format{gap:10px}.course-format-note{font-size:10px}.course-online-label{font-size:44px}}
.course>div>p:not(.eyebrow){margin-top:14px}
.course{background:linear-gradient(150deg,#f0e3d4,#d8b296);color:#493329}
.course .eyebrow,.course p{color:#5b4033}
[data-theme="dark"] .course{background:linear-gradient(150deg,#5c4034,#3d2d27);color:#fff4e8}
[data-theme="dark"] .course .eyebrow,[data-theme="dark"] .course p{color:#f4e2d2}
.person-bio-summary,.person-bio-full p{font-size:12px;line-height:1.75;color:var(--muted)}
.person-bio-full{padding-top:12px}
.person-bio-full p+p{margin-top:12px}
.person-card{align-self:flex-start}
.person-portrait{height:auto;aspect-ratio:1 / 1}
.person-portrait.has-photo:before,.person-portrait.has-photo:after{display:none}
.person-portrait>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.bio-toggle{display:block;margin-top:15px;padding:8px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--green);font:600 12px 'DM Sans',sans-serif}
.bio-toggle:hover{color:var(--clay)}
.teacher-instagram{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:6px 0;color:var(--green);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.teacher-instagram svg{width:20px;height:20px;flex:none}
.teacher-instagram:hover{color:var(--clay)}
.teacher-instagram:focus-visible{outline:2px solid currentColor;outline-offset:4px;border-radius:3px}
[data-theme="dark"] .teacher-instagram{color:var(--lime)}
[data-theme="dark"] .bio-toggle{color:var(--lime)}
.booking-teacher{display:flex;align-items:center;gap:16px;margin:4px 0 16px;padding:4px 0}
.booking-avatar{display:grid;place-items:center;width:78px;height:78px;flex:none;overflow:hidden;border-radius:50%;background:var(--pale);color:var(--green);font:400 38px 'Libre Caslon Display',Georgia,serif}
.booking-avatar img{width:100%;height:100%;object-fit:cover}
.booking-teacher-info .eyebrow{font-size:8px;letter-spacing:1.5px}
.booking-teacher-info h3{margin:3px 0 5px;font-size:26px;line-height:1.1}
.booking-bio-toggle{padding:2px 0;border:0;border-bottom:1px solid currentColor;background:transparent;color:var(--green);font:600 12px 'DM Sans',sans-serif}
.booking-bio-toggle:hover{color:var(--clay)}
.booking-bio{max-height:180px;overflow-y:auto;margin:0 0 14px;padding:14px;border-radius:10px;background:var(--paper)}
.booking-bio p{font-size:11px;line-height:1.7}
.booking-bio p+p{margin-top:10px}
[data-theme="dark"] .booking-bio-toggle{color:var(--lime)}
