/* S&H Badminton Beskydy – Aktuality, v1.1.0 */

/* Náhledové karty na úvodní stránce i ve spodní části článku. */
#sh-main .sh-news__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
#sh-main .sh-news__card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border-radius: 25px;
  background: #fff;
  border: 1px solid var(--sh-line, rgba(7,20,67,.11));
  box-shadow: 0 14px 42px rgba(7,20,67,.06);
  transition: transform .2s ease, box-shadow .2s ease;
}
#sh-main .sh-news__card:hover { transform: translateY(-4px); box-shadow: 0 20px 55px rgba(7,20,67,.12); }
#sh-main .sh-news__media {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 266px;
  padding: 12px;
  background: #edf6ef;
  overflow: hidden;
}
#sh-main .sh-news__media img { display: block; width: 100%; height: 100% !important; max-height: 100%; object-fit: contain; }
#sh-main .sh-news__placeholder { display: grid; place-items: center; width: 100%; height: 100%; font-size: 64px; }
#sh-main .sh-news__content { display: flex; flex-direction: column; flex: 1; align-items: flex-start; padding: 26px; }
#sh-main .sh-news__date { margin-bottom: 12px; color: var(--sh-green-dark,#0b7e3a); font-size: .85rem; font-weight: 800; }
#sh-main .sh-news__title { margin: 0 0 14px; font-size: clamp(1.4rem,2vw,1.8rem); line-height: 1.16; overflow-wrap: anywhere; }
#sh-main .sh-news__title a { color: var(--sh-ink,#071443); text-decoration: none; }
#sh-main .sh-news__title a:hover { color: var(--sh-green-dark,#0b7e3a); }
#sh-main .sh-news__excerpt { margin: 0 0 24px; font-size: .95rem; line-height: 1.58; }
#sh-main .sh-news__link {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 45px; margin-top: auto; padding: 11px 20px;
  border-radius: 999px; background: var(--sh-green,#0fa34a); color: #fff !important;
  font-size: .88rem; font-weight: 900; text-decoration: none !important;
}
#sh-main .sh-news__link:hover { background: var(--sh-green-dark,#0b7e3a); }
#sh-main .sh-news__empty { grid-column: 1 / -1; padding: 22px; background: #fff; border: 1px solid var(--sh-line,rgba(7,20,67,.11)); border-radius: 18px; }

/* Jednotná stránka každého příspěvku. Vztahuje se výhradně na .shbb-single. */
#sh-main.shbb-single { background: #fbfdfb; color: #1d2638; }
#sh-main.shbb-single, #sh-main.shbb-single * { box-sizing: border-box; }
#sh-main.shbb-single .sh-container { width: min(100% - 48px, 1180px); margin-inline: auto; }
#sh-main.shbb-single a { text-decoration: none; }
#sh-main .shbb-article-hero {
  background: radial-gradient(circle at 92% 0%,rgba(15,163,74,.14),transparent 35rem), linear-gradient(135deg,#fff 0%,#f0f8f2 100%);
  padding: clamp(35px,5vw,66px) 0 clamp(58px,7vw,95px);
  border-bottom: 1px solid rgba(7,20,67,.08);
}
#sh-main .shbb-breadcrumb { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-bottom: 34px; color: #68758c; font-size: .9rem; font-weight: 700; }
#sh-main .shbb-breadcrumb a { color: #0b7e3a; font-weight: 900; transition: color .2s; }
#sh-main .shbb-breadcrumb a:hover { color: #071443; }
#sh-main .shbb-article-hero__grid { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(300px,.92fr); gap: clamp(36px,6vw,82px); align-items: center; }
#sh-main .shbb-article-hero__grid--no-image { grid-template-columns: minmax(0,850px); }
#sh-main .shbb-article-hero__copy { min-width: 0; }
#sh-main .shbb-article-kicker { margin: 0 0 16px !important; color: #0b7e3a !important; font-size: .83rem; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
#sh-main .shbb-article-hero h1 { margin: 0 0 22px; max-width: 760px; color: #071443; font-family: Raleway,Barlow,sans-serif; font-size: clamp(2.9rem,5.4vw,5.3rem); font-weight: 900; letter-spacing: -.052em; line-height: 1.02; overflow-wrap: anywhere; }
#sh-main .shbb-article-published { display: inline-flex; align-items: center; gap: 9px; margin: 0 0 21px; color: #64708a; font-size: .92rem; font-weight: 700; }
#sh-main .shbb-article-lead { margin: 0 0 28px; max-width: 670px; color: #3a4961; font-size: clamp(1.05rem,1.5vw,1.23rem); line-height: 1.65; }
#sh-main .shbb-event-facts { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin: 15px 0 27px; padding: 0; }
#sh-main .shbb-event-facts > div { min-width: 0; padding: 15px 19px; border: 1px solid rgba(15,163,74,.14); background: #fff; border-radius: 17px; }
#sh-main .shbb-event-facts dt { color: #64708a; font-size: .78rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
#sh-main .shbb-event-facts dd { margin: 5px 0 0; color: #071443; font-size: 1rem; font-weight: 900; line-height: 1.35; overflow-wrap: anywhere; }
#sh-main .shbb-signup-button, #sh-main .shbb-aside-button {
  display: inline-flex; gap: 12px; align-items: center; justify-content: center;
  min-height: 52px; padding: 14px 24px; border-radius: 999px;
  background: #0fa34a; color: #fff !important; font-weight: 900; line-height: 1.2;
  box-shadow: 0 14px 35px rgba(15,163,74,.19); transition: background .2s,transform .2s;
}
#sh-main .shbb-signup-button:hover, #sh-main .shbb-aside-button:hover { background: #0b7e3a; transform: translateY(-2px); }
#sh-main .shbb-article-poster { display: flex; align-items: center; justify-content: center; margin: 0; padding: clamp(10px,1.8vw,20px); min-width: 0; background: #fff; border: 1px solid rgba(7,20,67,.09); border-radius: 32px; box-shadow: 0 23px 60px rgba(7,20,67,.12); }
#sh-main .shbb-article-poster img { display: block; width: auto; max-width: 100%; max-height: 660px; height: auto !important; object-fit: contain; border-radius: 16px; }

#sh-main .shbb-article-main { padding: clamp(60px,7vw,100px) 0; }
#sh-main .shbb-article-main__grid { display: grid; grid-template-columns: minmax(0,1fr) 290px; gap: clamp(32px,6vw,96px); align-items: start; }
#sh-main .shbb-article-prose { min-width: 0; color: #38465c; font-size: clamp(1.06rem,1.35vw,1.19rem); line-height: 1.8; overflow-wrap: anywhere; }
#sh-main .shbb-article-prose > *:first-child { margin-top: 0 !important; }
#sh-main .shbb-article-prose p { margin: 0 0 1.35em; color: #38465c; }
#sh-main .shbb-article-prose h2 { margin: 1.5em 0 .5em; color: #071443; font-family: Raleway,Barlow,sans-serif; font-size: clamp(1.75rem,2.6vw,2.6rem); line-height: 1.12; font-weight: 900; letter-spacing: -.045em; }
#sh-main .shbb-article-prose h3 { margin: 1.45em 0 .55em; color: #071443; font-family: Raleway,Barlow,sans-serif; font-size: clamp(1.3rem,1.8vw,1.65rem); line-height: 1.25; letter-spacing: -.025em; }
#sh-main .shbb-article-prose h4 { margin: 1.4em 0 .5em; color: #071443; font-weight: 900; }
#sh-main .shbb-article-prose strong { color: #071443; font-weight: 800; }
#sh-main .shbb-article-prose ul, #sh-main .shbb-article-prose ol { margin: 0 0 1.6em; padding-left: 1.6em; }
#sh-main .shbb-article-prose li { margin: .3em 0; padding-left: .25em; }
#sh-main .shbb-article-prose li::marker { color: #0fa34a; }
#sh-main .shbb-article-prose a:not(.wp-block-button__link) { color: #0b7e3a; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
#sh-main .shbb-article-prose img { display: block; max-width: 100%; height: auto; border-radius: 18px; }
#sh-main .shbb-article-prose figure { margin: 22px 0 30px; }
#sh-main .shbb-article-prose figcaption { margin-top: 8px; color: #64708a; font-size: .82rem; }
#sh-main .shbb-article-prose blockquote { margin: 28px 0; padding: 18px 26px; border-left: 5px solid #0fa34a; background: #f1f9f3; border-radius: 0 17px 17px 0; }
#sh-main .shbb-article-prose .wp-block-button__link { padding: 13px 23px; color: #fff; background: #0fa34a; border-radius: 999px; font-weight: 900; }
#sh-main .shbb-article-prose table { width: 100%; border-collapse: collapse; }
#sh-main .shbb-article-prose th,#sh-main .shbb-article-prose td { padding: 12px; border: 1px solid rgba(7,20,67,.13); text-align: left; }
#sh-main .shbb-article-prose hr { border: 0; border-top: 1px solid rgba(7,20,67,.15); margin: 35px 0; }

#sh-main .shbb-article-aside { position: sticky; top: 125px; padding: 29px 25px; border: 1px solid rgba(7,20,67,.1); border-radius: 25px; background: #f0f8f2; }
#sh-main .shbb-article-aside .sh-eyebrow { margin: 0 0 12px !important; font-size: .75rem; }
#sh-main .shbb-article-aside h2 { margin: 0 0 14px; color: #071443; font-size: 1.9rem; line-height: 1.1; letter-spacing: -.04em; }
#sh-main .shbb-article-aside p:not(.sh-eyebrow) { margin: 0 0 22px; font-size: .95rem; line-height: 1.6; color: #596779; }
#sh-main .shbb-article-aside .shbb-aside-button { min-height: 45px; padding: 11px 17px; font-size: .82rem; box-shadow: none; }
#sh-main .shbb-aside-email { display: block; margin-top: 20px; font-size: .9rem; color: #0b7e3a; text-decoration: underline !important; font-weight: 900; overflow-wrap: anywhere; }

#sh-main .shbb-article-more { padding: clamp(58px,7vw,90px) 0; background: #e9f7ef; }
#sh-main .shbb-article-more__head { display: flex; justify-content: space-between; align-items: end; gap: 25px; margin-bottom: 32px; }
#sh-main .shbb-article-more .sh-eyebrow { margin: 0 0 13px !important; }
#sh-main .shbb-article-more h2 { margin: 0; color: #071443; font-size: clamp(2.3rem,4.1vw,3.8rem); line-height: 1.05; letter-spacing: -.045em; }
#sh-main .shbb-article-more h2 span { color: #0fa34a; }
#sh-main .shbb-back-bottom { flex-shrink: 0; display: inline-flex; padding: 12px 18px; border: 1px solid rgba(7,20,67,.12); border-radius: 999px; color: #071443; background: #fff; font-weight: 900; font-size: .87rem; }
#sh-main .shbb-back-bottom:hover { color: #0b7e3a; }

@media (max-width: 1000px) {
  #sh-main .shbb-article-hero__grid { grid-template-columns: minmax(0,1fr) minmax(255px,.8fr); gap: 32px; }
  #sh-main .shbb-article-main__grid { grid-template-columns: minmax(0,1fr) 235px; gap: 30px; }
}
@media (max-width: 850px) {
  #sh-main .sh-news__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #sh-main .shbb-article-hero__grid { grid-template-columns: 1fr; }
  #sh-main .shbb-article-hero__copy { max-width: 720px; }
  #sh-main .shbb-article-poster { max-width: 660px; }
  #sh-main .shbb-article-poster img { max-height: 680px; }
  #sh-main .shbb-article-main__grid { grid-template-columns: 1fr; }
  #sh-main .shbb-article-aside { position: static; max-width: 580px; }
}
@media (max-width: 600px) {
  #sh-main.shbb-single .sh-container { width: min(100% - 32px,1180px); }
  #sh-main .sh-news__grid { grid-template-columns: 1fr; gap: 18px; }
  #sh-main .sh-news__media { height: 290px; }
  #sh-main .shbb-breadcrumb { margin-bottom: 24px; }
  #sh-main .shbb-article-hero h1 { font-size: clamp(2.45rem,10vw,3.8rem); }
  #sh-main .shbb-event-facts { grid-template-columns: 1fr; }
  #sh-main .shbb-article-poster { padding: 10px; border-radius: 22px; }
  #sh-main .shbb-article-main { padding: 55px 0; }
  #sh-main .shbb-article-more__head { flex-direction: column; align-items: flex-start; }
  #sh-main .shbb-article-prose { font-size: 1.04rem; }
}


/* V1.2.0 — nadpis bez rozdělení slova na jeden znak. */
#sh-main .shbb-article-hero h1 {
  font-size: clamp(2.1rem, 3.85vw, 4.15rem);
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
  text-wrap: wrap;
  line-height: 1.07;
}
@media (min-width: 851px) {
  #sh-main .shbb-article-hero__grid {
    grid-template-columns: minmax(0,1.14fr) minmax(285px,.86fr);
    gap: clamp(28px,4.8vw,72px);
  }
}
@media (max-width: 600px) {
  #sh-main .shbb-article-hero h1 { font-size: clamp(1.75rem, 8vw, 2.7rem); }
}

/* Registrační formulář přímo pod obsahem článku. */
#sh-main .shbb-registration {
  margin: clamp(34px, 5vw, 58px) 0 0;
  padding: clamp(24px, 3.7vw, 42px);
  border: 1px solid rgba(15,163,74,.19);
  border-radius: 28px;
  background: linear-gradient(145deg,#f0f9f2,#fff);
  box-shadow: 0 18px 54px rgba(7,20,67,.06);
  scroll-margin-top: 100px;
}
#sh-main .shbb-registration__kicker {
  margin: 0 0 8px !important;
  color: #0b7e3a !important;
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .17em;
  text-transform: uppercase;
}
#sh-main .shbb-registration h2 { margin: 0 0 26px !important; font-size: clamp(1.8rem,3vw,2.45rem); }
#sh-main .shbb-registration__intro { margin: 0 0 25px !important; color: #596779; font-size: .98rem; }
#sh-main .shbb-registration__fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
#sh-main .shbb-registration__field { display: flex; flex-direction: column; min-width: 0; gap: 7px; }
#sh-main .shbb-registration__field--wide { grid-column: 1 / -1; }
#sh-main .shbb-registration__field label { font-size: .86rem; font-weight: 900; color: #071443; }
#sh-main .shbb-registration__field label span { color: #0b7e3a; }
#sh-main .shbb-registration input:not([type=checkbox]),
#sh-main .shbb-registration textarea {
  width: 100%; min-height: 52px; padding: 13px 15px; color: #071443;
  background: #fff; border: 1px solid rgba(7,20,67,.18); border-radius: 13px;
  font: inherit; font-size: 1rem; outline: none; transition: border-color .2s, box-shadow .2s;
}
#sh-main .shbb-registration textarea { min-height: 104px; resize: vertical; }
#sh-main .shbb-registration input:focus,
#sh-main .shbb-registration textarea:focus { border-color: #0fa34a; box-shadow: 0 0 0 3px rgba(15,163,74,.13); }
#sh-main .shbb-registration__privacy { display: flex; align-items: flex-start; gap: 12px; margin-top: 18px; font-size: .88rem; line-height: 1.55; color: #596779; }
#sh-main .shbb-registration__privacy input { flex: 0 0 19px; width: 19px; height: 19px; margin: 2px 0 0; accent-color: #0fa34a; }
#sh-main .shbb-registration__privacy a { color: #0b7e3a; text-decoration: underline; }
#sh-main .shbb-registration__submit {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 53px; margin-top: 24px; padding: 13px 28px;
  border: 0; border-radius: 999px; background: #0fa34a; color: #fff;
  font: inherit; font-size: .95rem; font-weight: 900; cursor: pointer;
  box-shadow: 0 12px 28px rgba(15,163,74,.2);
}
#sh-main .shbb-registration__submit:hover { background: #0b7e3a; }
#sh-main .shbb-registration__notice { margin: 0 0 22px !important; padding: 15px 18px; border-radius: 14px; font-size: .95rem; font-weight: 700; line-height: 1.55; }
#sh-main .shbb-registration__notice--success { background: #e5f6e9; color: #07592c; border: 1px solid #9bd3ab; }
#sh-main .shbb-registration__notice--error { background: #fff3ee; color: #96380a; border: 1px solid #eac3b0; }
#sh-main .shbb-registration__honeypot { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
#sh-main .shbb-registration__small { margin: 12px 0 0 !important; font-size: .79rem; color: #64708a; }
@media (max-width: 600px) {
  #sh-main .shbb-registration { padding: 23px 18px; border-radius: 22px; }
  #sh-main .shbb-registration__fields { grid-template-columns: 1fr; gap: 15px; }
  #sh-main .shbb-registration__field--wide { grid-column: auto; }
  #sh-main .shbb-registration__submit { width: 100%; }
}
