/* Addsell – Lediga jobb: card grid (after www.saljpoolen.se/sv/lediga-jobb, without descriptions) and the ad's own page. */
.asj { max-width: 1140px; margin: 0 auto; padding: 8px 16px 40px; box-sizing: border-box; text-align: left; }
.asj *, .asj *::before, .asj *::after { box-sizing: border-box; }
.asj-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 32px 30px; }
@media (min-width: 576px) { .asj-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 992px) { .asj-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

.asj-card { display: flex; flex-direction: column; height: 100%; background: #f8fafc; border-radius: 10px; overflow: hidden;
  box-shadow: 0 8px 16px rgba(0, 0, 0, .15); color: #0b5e7a; text-decoration: none; }
a.asj-card:hover, a.asj-card:focus { color: #0b5e7a; text-decoration: none; }
a.asj-card:focus { outline: 3px solid #b82b37; outline-offset: 4px; }

.asj-img { position: relative; aspect-ratio: 16 / 10; background: #c5d6de; }
.asj-img img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; display: block; }

.asj-body { flex: 1; display: flex; flex-direction: column; justify-content: space-between; gap: 16px; padding: 16px 20px 18px; }
.asj-title { font-family: Montserrat, sans-serif; font-size: 20px; line-height: 1.3; font-weight: 600; color: #0b5e7a; }
.asj-arrow { position: relative; align-self: flex-end; right: 0; height: 24px; color: #b82b37;
  transition: right .5s cubic-bezier(.175, .885, .32, 1.275); }
.asj-arrow svg { display: block; }
a.asj-card:hover .asj-arrow, a.asj-card:focus .asj-arrow { right: -12px; }
.asj-empty { text-align: center; padding: 8px 0; }

/* The ad's own page */
.single-platsannons main.main { max-width: 860px; margin: 0 auto; padding: 24px 16px 48px; box-sizing: border-box; }
.single-platsannons .byline, .single-platsannons time.updated { display: none; }
.single-platsannons .entry-title { margin-bottom: 20px; }
.asj-single-img { margin: 0 0 24px; border-radius: 10px; overflow: hidden; }
.asj-single-img img { display: block; width: 100%; height: auto; max-width: none; }
.asj-single-text { margin-bottom: 32px; }
.asj-apply { margin: 0 0 24px; }
.asj-apply-btn { display: inline-block; padding: 14px 32px; border-radius: 30px; background: #b82b37; color: #fff; font-weight: 600; text-decoration: none; }
.asj-apply-btn:hover, .asj-apply-btn:focus { background: #0b5e7a; color: #fff; text-decoration: none; }
.asj-apply-btn:focus { outline: 3px solid #0b5e7a; outline-offset: 3px; }
.asj-back a { color: #0b5e7a; }
.asj-single-text > * + * { margin-top: 1em; }
.asj-single-text h2, .asj-single-text h3, .asj-single-text h4 { margin-top: 1.5em; }
