/**
 * SW AnnonseLink frontend component.
 *
 * Layout and typography are intentionally isolated from theme element rules.
 * The component still inherits the site's primary font family through the
 * root element, while margins, padding and component typography stay stable.
 */
.sw-annonselink.sw-annonselink{
  --swal-accent:#2b62a8;
  --swal-accent-hover:#1d4a80;
  --swal-rule:#dcd8d2;
  --swal-title:#22201d;
  --swal-text:#514e48;
  --swal-label:#7a7670;
  --swal-gap:9px;
  --swal-pad-y:20px;
  --swal-radius:0px;
  --swal-maxw:56ch;

  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
  gap:var(--swal-gap) !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  margin:26px 0 !important;
  padding:0 !important;
  float:none !important;
  clear:both !important;
  position:relative !important;
  overflow:visible !important;
  background:transparent !important;
  box-shadow:none !important;
  text-align:left !important;
  text-indent:0 !important;
  font-family:inherit !important;
  font-style:normal !important;
}

.sw-annonselink.sw-annonselink,
.sw-annonselink.sw-annonselink *,
.sw-annonselink.sw-annonselink *::before,
.sw-annonselink.sw-annonselink *::after{
  box-sizing:border-box !important;
}

/* Frame variants. The repeated root class keeps theme selectors from winning. */
.sw-annonselink.sw-annonselink.swal-frame-rules{
  border:0 !important;
  border-top:1px solid var(--swal-rule) !important;
  border-bottom:1px solid var(--swal-rule) !important;
  border-radius:0 !important;
  padding:var(--swal-pad-y) 0 !important;
}
.sw-annonselink.sw-annonselink.swal-frame-border{
  border:1px solid var(--swal-rule) !important;
  border-radius:4px !important;
  padding:22px 24px !important;
}
.sw-annonselink.sw-annonselink.swal-frame-tint{
  border:0 !important;
  border-radius:4px !important;
  padding:22px 24px !important;
  background:rgba(0,0,0,.025) !important;
}
.sw-annonselink.sw-annonselink.swal-frame-none{
  border:0 !important;
  border-radius:0 !important;
  padding:0 !important;
}

/* Theme-proof element reset. Internal vertical rhythm comes only from gap. */
.sw-annonselink.sw-annonselink > .swal-label,
.sw-annonselink.sw-annonselink > .swal-title,
.sw-annonselink.sw-annonselink > .swal-text,
.sw-annonselink.sw-annonselink > .swal-cta,
.sw-annonselink.sw-annonselink .swal-body > .swal-label,
.sw-annonselink.sw-annonselink .swal-body > .swal-title,
.sw-annonselink.sw-annonselink .swal-body > .swal-text,
.sw-annonselink.sw-annonselink .swal-body > .swal-cta,
.sw-annonselink.sw-annonselink .swal-media,
.sw-annonselink.sw-annonselink .swal-inner,
.sw-annonselink.sw-annonselink .swal-body{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  min-width:0 !important;
  max-width:none;
  background:transparent !important;
  box-shadow:none !important;
}

.sw-annonselink.sw-annonselink .swal-label{
  display:block !important;
  font-family:inherit !important;
  font-size:10.5px !important;
  font-weight:600 !important;
  font-style:normal !important;
  line-height:1 !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  color:var(--swal-label) !important;
}

.sw-annonselink.sw-annonselink .swal-title{
  display:block !important;
  font-family:inherit !important;
  font-size:21px !important;
  font-weight:600 !important;
  font-style:normal !important;
  line-height:1.3 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
  color:var(--swal-title) !important;
  text-wrap:pretty;
}


/* The heading is a second, explicit route to the same destination as the CTA. */
.sw-annonselink.sw-annonselink .swal-title-link{
  display:inline !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:none !important;
  box-shadow:none !important;
  font-family:inherit !important;
  font-size:inherit !important;
  font-weight:inherit !important;
  font-style:inherit !important;
  line-height:inherit !important;
  letter-spacing:inherit !important;
  text-transform:inherit !important;
  text-decoration:none !important;
  text-shadow:none !important;
  color:inherit !important;
  cursor:pointer !important;
  overflow-wrap:anywhere;
  -webkit-text-fill-color:currentColor !important;
}

.sw-annonselink.sw-annonselink .swal-title-link::before,
.sw-annonselink.sw-annonselink .swal-title-link::after{
  display:none !important;
  content:none !important;
}

.sw-annonselink.sw-annonselink .swal-title-link:hover{
  background:none !important;
  box-shadow:none !important;
  color:var(--swal-accent) !important;
  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:3px !important;
}

.sw-annonselink.sw-annonselink .swal-title-link:focus-visible{
  border-radius:2px !important;
  background:none !important;
  box-shadow:none !important;
  outline:2px solid var(--swal-accent) !important;
  outline-offset:3px !important;
  color:var(--swal-accent) !important;
  text-decoration:none !important;
}

.sw-annonselink.sw-annonselink .swal-text{
  display:block !important;
  max-width:var(--swal-maxw) !important;
  font-family:inherit !important;
  font-size:15.5px !important;
  font-weight:400 !important;
  font-style:normal !important;
  line-height:1.6 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
  color:var(--swal-text) !important;
  text-wrap:pretty;
}

.sw-annonselink.sw-annonselink .swal-cta{
  align-self:flex-start !important;
  display:inline-flex !important;
  align-items:baseline !important;
  justify-content:flex-start !important;
  gap:7px !important;
  width:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:0;
  margin:3px 0 0 !important;
  padding:0 0 2px !important;
  border:0 !important;
  border-bottom:1.5px solid var(--swal-accent) !important;
  border-radius:0 !important;
  background:none !important;
  box-shadow:none !important;
  font-family:inherit !important;
  font-size:15px !important;
  font-weight:600 !important;
  font-style:normal !important;
  line-height:1.4 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
  text-decoration:none !important;
  text-shadow:none !important;
  color:var(--swal-accent) !important;
  cursor:pointer !important;
  white-space:normal !important;
  overflow-wrap:anywhere;
  -webkit-text-fill-color:currentColor !important;
}

.sw-annonselink.sw-annonselink .swal-cta::before,
.sw-annonselink.sw-annonselink .swal-cta::after{
  display:none !important;
  content:none !important;
}

.sw-annonselink.sw-annonselink .swal-cta:hover,
.sw-annonselink.sw-annonselink .swal-cta:focus-visible{
  border-bottom-color:currentColor !important;
  background:none !important;
  box-shadow:none !important;
  text-decoration:none !important;
  color:var(--swal-accent-hover) !important;
}

.sw-annonselink.sw-annonselink .swal-cta:focus-visible{
  outline:2px solid var(--swal-accent) !important;
  outline-offset:3px !important;
  border-radius:2px !important;
}

.sw-annonselink.sw-annonselink .swal-arrow{
  display:inline !important;
  flex:0 0 auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:none !important;
  font-family:inherit !important;
  font-size:14px !important;
  font-weight:inherit !important;
  line-height:inherit !important;
  color:inherit !important;
}

/* Image layout. */
.sw-annonselink.sw-annonselink.swal-has-image{
  display:block !important;
}

.sw-annonselink.sw-annonselink.swal-has-image .swal-inner{
  display:grid !important;
  grid-template-columns:200px minmax(0,1fr) !important;
  gap:22px !important;
  align-items:start !important;
  width:100% !important;
}

.sw-annonselink.sw-annonselink .swal-media{
  display:block !important;
  width:100% !important;
  line-height:0 !important;
}

.sw-annonselink.sw-annonselink .swal-image-link{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:3px !important;
  background:none !important;
  box-shadow:none !important;
  color:inherit !important;
  line-height:0 !important;
  text-decoration:none !important;
  cursor:pointer !important;
  overflow:hidden !important;
  -webkit-text-fill-color:currentColor !important;
}

.sw-annonselink.sw-annonselink .swal-image-link::before,
.sw-annonselink.sw-annonselink .swal-image-link::after{
  display:none !important;
  content:none !important;
}

.sw-annonselink.sw-annonselink .swal-image-link:hover,
.sw-annonselink.sw-annonselink .swal-image-link:focus-visible{
  border:0 !important;
  background:none !important;
  box-shadow:none !important;
  text-decoration:none !important;
}

.sw-annonselink.sw-annonselink .swal-image-link:focus-visible{
  outline:2px solid var(--swal-accent) !important;
  outline-offset:3px !important;
}

.sw-annonselink.sw-annonselink .swal-image-link:hover .swal-img{
  opacity:.94 !important;
}

.sw-annonselink.sw-annonselink .swal-img{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  aspect-ratio:4/3 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:3px !important;
  background:transparent !important;
  box-shadow:none !important;
  object-fit:cover !important;
  object-position:center !important;
  vertical-align:middle !important;
}

.sw-annonselink.sw-annonselink .swal-body{
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:var(--swal-gap) !important;
  width:100% !important;
}

.swal-draft-note.swal-draft-note{
  display:inline-flex !important;
  align-self:flex-start !important;
  margin:0 0 2px !important;
  padding:3px 6px !important;
  border:0 !important;
  border-radius:2px !important;
  background:#f6f0e0 !important;
  box-shadow:none !important;
  color:#7a5c14 !important;
  font-family:inherit !important;
  font-size:11px !important;
  font-weight:600 !important;
  line-height:1.35 !important;
}

.swal-notice.swal-notice{
  margin:20px 0 !important;
  padding:12px 14px !important;
  border:0 !important;
  border-left:3px solid #b32d2e !important;
  background:#fcf0f1 !important;
  box-shadow:none !important;
  color:#1d2327 !important;
  font-family:inherit !important;
  font-size:14px !important;
  line-height:1.5 !important;
}

@media (max-width:599px){
  .sw-annonselink.sw-annonselink.swal-has-image .swal-inner{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .sw-annonselink.sw-annonselink .swal-img{
    aspect-ratio:16/9 !important;
  }
  .sw-annonselink.sw-annonselink .swal-title{
    font-size:18px !important;
  }
  .sw-annonselink.sw-annonselink .swal-text{
    font-size:14.5px !important;
  }
  .sw-annonselink.sw-annonselink .swal-cta{
    align-items:center !important;
    min-height:44px !important;
  }
}

@media (prefers-reduced-motion:reduce){
  .sw-annonselink.sw-annonselink .swal-cta{
    transition:none !important;
  }
}
