.resources .section-heading{display:block}
.resources .resource-lead{max-width:570px;margin-top:24px;padding:2px 0 2px 22px;border-left:3px solid var(--wine);font-size:20px;line-height:1.45;color:var(--ink)}
.macro-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}
.macro-intro .text-link{white-space:nowrap}
.course-carousel-track{display:flex;gap:20px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:0;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--line) transparent;padding-bottom:9px}
.course-carousel-track:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.course-carousel-track figure{flex:0 0 calc((100% - 20px)/2);min-width:0;scroll-snap-align:start}
.course-carousel-track img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px}
.course-carousel-controls{display:flex;align-items:center;justify-content:space-between;margin-top:15px}
.course-carousel-count{font-size:12px;letter-spacing:.13em;color:var(--muted);font-variant-numeric:tabular-nums}
.course-carousel-buttons{display:flex;gap:9px}
.course-carousel-buttons button{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);font:23px/1 'DM Sans',Arial,sans-serif;cursor:pointer;transition:background .2s,color .2s}
.course-carousel-buttons button:hover:not(:disabled){background:var(--accent);color:#fff}
.course-carousel-buttons button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.course-carousel-buttons button:disabled{opacity:.35;cursor:default}
@media(min-width:901px){
  .detail-section{background:#efebef}
  .course-carousel{position:relative;padding-bottom:35px}
  .course-carousel-track{position:relative;display:block;height:clamp(320px,38vw,500px);overflow:hidden;padding:0;scroll-snap-type:none;scrollbar-width:none}
  .course-carousel-track figure{position:absolute;top:50%;left:50%;width:55%;margin:0;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-50%) scale(.72);transition:left .55s cubic-bezier(.22,.68,0,1),transform .55s cubic-bezier(.22,.68,0,1),opacity .4s ease,visibility .55s}
  .course-carousel-track figure.is-active,.course-carousel-track figure.is-prev,.course-carousel-track figure.is-next{opacity:1;visibility:visible}
  .course-carousel-track figure.is-active{left:50%;z-index:3;transform:translate(-50%,-50%) scale(1)}
  .course-carousel-track figure.is-prev{left:16%;z-index:2;transform:translate(-50%,-50%) scale(.77)}
  .course-carousel-track figure.is-next{left:84%;z-index:2;transform:translate(-50%,-50%) scale(.77)}
  .course-carousel-track figure.is-hidden-left{left:-18%}
  .course-carousel-track figure.is-hidden-right{left:118%}
  .course-carousel-track img{aspect-ratio:16/10;border-radius:10px;box-shadow:0 16px 36px #32283324}
  .course-carousel-controls{position:absolute;inset:0 0 35px;margin:0;pointer-events:none;z-index:5}
  .course-carousel-count{position:absolute;left:50%;bottom:-34px;transform:translateX(-50%)}
  .course-carousel-buttons{position:absolute;top:50%;left:12px;right:12px;transform:translateY(-50%);display:flex;justify-content:space-between}
  .course-carousel-buttons button{pointer-events:auto;width:50px;height:50px;background:#fffffff2;box-shadow:0 5px 20px #32283318}
}
@media(max-width:700px){.resources .resource-lead{font-size:18px;margin-top:20px;padding-left:16px}.macro-intro{display:block;margin-bottom:22px}.macro-intro .text-link{margin-top:17px}.course-carousel-track{gap:12px}.course-carousel-track figure{flex-basis:88%}.course-carousel-track img{aspect-ratio:16/10}}
@media(prefers-reduced-motion:reduce){.course-carousel-buttons button,.course-carousel-track figure{transition:none}}
