.contents-section{
  position:relative;
  overflow:hidden;
  background:#dae8f7;
  scroll-margin-top:20px;
}
.contents-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:url("assets/careers-f-outline.svg") 0 0/78px 78px repeat;
  filter:brightness(0);
  opacity:.065;
  pointer-events:none;
}
.contents-section>*{position:relative}
.contents-heading{text-align:center}
.contents-tag{
  display:inline-block;
  padding:4px 15px;
  border-radius:999px;
  background:var(--blue);
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:2px;
}
.contents-heading h2{
  width:max-content;
  max-width:100%;
  margin:10px auto 0;
  padding-bottom:8px;
  border-bottom:5px solid var(--red);
  color:var(--blue);
  font-size:clamp(32px,3.5vw,48px);
  line-height:1.15;
  letter-spacing:-1.3px;
}
.contents-profile{
  display:flex;
  align-items:center;
  gap:15px;
  width:max-content;
  max-width:100%;
  margin:34px 0 0;
  text-align:left;
  color:var(--blue);
}
.contents-avatar{
  display:grid;
  place-items:center;
  flex:none;
  width:56px;
  height:56px;
  border-radius:50%;
  background:var(--blue);
  color:#fff;
  font-size:24px;
  font-weight:800;
}
.contents-profile strong,.contents-profile small{display:block}
.contents-profile strong{font-size:15px}
.contents-profile small{margin-top:4px;color:var(--muted);font-size:12px}
.contents-viewport{
  overflow-x:auto;
  margin-top:20px;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  cursor:grab;
}
.contents-viewport::-webkit-scrollbar{display:none}
.contents-viewport:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.contents-viewport.is-dragging{cursor:grabbing;user-select:none}
.contents-viewport img{-webkit-user-drag:none;user-select:none}
.contents-track{display:flex;width:max-content}
.contents-group{display:flex;flex:none;gap:18px;margin:0;padding:0 18px 0 0;list-style:none}
.contents-card{flex:none;width:260px}
.contents-card>a{
  display:flex;
  flex-direction:column;
  height:405px;
  overflow:hidden;
  border-radius:15px;
  background:#fff;
  box-shadow:0 12px 26px rgba(9,46,76,.09);
  transition:transform 220ms ease,box-shadow 220ms ease;
}
.contents-card>a:hover,.contents-card>a:focus-visible{transform:translateY(-5px);box-shadow:0 18px 30px rgba(9,46,76,.16)}
.contents-card-image{position:relative;display:block;height:305px;overflow:hidden;background:#bdd8ea}
.contents-card-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.contents-play{
  position:absolute;
  top:50%;left:50%;
  display:grid;place-items:center;
  width:50px;height:50px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:rgba(255,255,255,.9);
  color:var(--blue);
  font-size:18px;
  padding-left:3px;
}
.contents-card-copy{display:flex;flex:1;flex-direction:column;justify-content:space-between;gap:8px;padding:14px 16px 16px}
.contents-card-copy strong{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;line-height:1.35}
.contents-card-copy>span{color:var(--blue);font-size:12px;font-weight:800}
.contents-actions{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:28px}
.contents-actions>a{padding:11px 15px;border-radius:5px;background:var(--blue);color:#fff;font-size:13px;font-weight:800}
.contents-actions>a:focus-visible,.contents-profile:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.contents-section.is-looping .contents-viewport{mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent)}
.contents-section.is-looping .contents-viewport:hover,
.contents-section.is-looping .contents-viewport:focus-within,
.contents-section.is-looping .contents-viewport.is-dragging{mask-image:none}
@media(max-width:700px){
  .contents-heading h2{font-size:32px}
  .contents-profile{margin-top:28px}
  .contents-avatar{width:46px;height:46px;font-size:21px}
  .contents-profile strong{font-size:13px}
  .contents-group{gap:12px;padding-right:12px}
  .contents-card{width:228px}
  .contents-card>a{height:370px}
  .contents-card-image{height:276px}
  .contents-actions{flex-wrap:wrap}
}
