/* Reset a premenné */
[id^="scbp-widget-"][id] {
  --red: #d0243c;
  --ink: #333;
  --muted: #555;
  --line: #e2e2e2;
  --display: "Familjen Grotesk", "Segoe UI", sans-serif;
  --body: "IBM Plex Sans", "Segoe UI", sans-serif;
  width: 100% !important;
  margin: 0 !important;
  color: var(--ink);
  font: 16px/1.6 var(--body);
  -webkit-font-smoothing: antialiased;
}

[id^="scbp-widget-"][id] *,
[id^="scbp-widget-"][id] *::before,
[id^="scbp-widget-"][id] *::after {
  box-sizing: border-box !important;
}

[id^="scbp-widget-"][id] .scbp-scandi-wrap {
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 22px 12px 32px !important;
}

[id^="scbp-widget-"][id] h1,
[id^="scbp-widget-"][id] h2,
[id^="scbp-widget-"][id] h3,
[id^="scbp-widget-"][id] p {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--ink) !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}

[id^="scbp-widget-"][id] h1,
[id^="scbp-widget-"][id] h2,
[id^="scbp-widget-"][id] h3,
[id^="scbp-widget-"][id] summary {
  font-family: var(--display) !important;
}

[id^="scbp-widget-"][id] p,
[id^="scbp-widget-"][id] a,
[id^="scbp-widget-"][id] .scbp-country {
  font-family: var(--body) !important;
}

[id^="scbp-widget-"][id] h1 {
  font-size: clamp(28px, 3.5vw, 36px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
}

[id^="scbp-widget-"][id] h2 {
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

/* --- Cenník --- */

[id^="scbp-widget-"][id] .scbp-pricing {
  display: block !important;
  margin: 0 !important;
  padding: 22px !important;
  background: #f2f2f2 !important;
  border-radius: 18px !important;
}

[id^="scbp-widget-"][id] .scbp-intro {
  margin: 0 0 20px !important;
  padding: 0 0 0 18px !important;
  border-left: 5px solid var(--red) !important;
  background: transparent !important;
}

[id^="scbp-widget-"][id] .scbp-prices {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

[id^="scbp-widget-"][id] .scbp-price {
  --tone: #d0243c;
  --tint: #fae8eb;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  border: 1px solid var(--line) !important;
  border-top: 5px solid var(--tone) !important;
  border-radius: 13px !important;
  overflow: hidden !important;
  box-shadow: 0 8px 24px -16px rgba(0, 0, 0, .25) !important;
}

[id^="scbp-widget-"][id] .scbp-price:nth-child(1) { --tone: #b33e4a; --tint: #fff4f5; }
[id^="scbp-widget-"][id] .scbp-price:nth-child(3) { --tone: #9e1830; --tint: #f5e6ea; }
[id^="scbp-widget-"][id] .scbp-price:nth-child(4) { --tone: #13796f; --tint: #e8f4f0; }
[id^="scbp-widget-"][id] .scbp-price:nth-child(5) { --tone: #325ba5; --tint: #eaf0fa; }

[id^="scbp-widget-"][id] .scbp-price-top {
  min-height: 112px !important;
  padding: 12px 14px !important;
  background: var(--tint) !important;
  flex-grow: 1 !important;
}

[id^="scbp-widget-"][id] .scbp-country {
  color: var(--tone) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  text-transform: uppercase !important;
}

[id^="scbp-widget-"][id] .scbp-price h3 {
  margin-top: 6px !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

[id^="scbp-widget-"][id] .scbp-price .scbp-sub {
  margin-top: 4px !important;
  color: var(--muted) !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
}

[id^="scbp-widget-"][id] .scbp-amount {
  display: block !important;
  margin: 0 !important;
  padding: 12px 14px !important;
  color: var(--tone) !important;
  font: 700 34px/1.1 var(--display) !important;
}

/* --- Rozbaľovacie služby --- */

[id^="scbp-widget-"][id] details {
  margin: 0 !important;
  padding: 0 !important;
}

[id^="scbp-widget-"][id] summary {
  cursor: pointer !important;
  list-style: none !important;
}

[id^="scbp-widget-"][id] summary::-webkit-details-marker { display: none !important; }
[id^="scbp-widget-"][id] summary::marker { content: "" !important; }

[id^="scbp-widget-"][id] .scbp-shared {
  margin-top: 16px !important;
  background: #fff !important;
  border: 1px solid var(--line) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

[id^="scbp-widget-"][id] .scbp-shared > summary {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 14px 48px !important;
  background: transparent !important;
}

[id^="scbp-widget-"][id] .scbp-summary-text strong {
  display: block !important;
  color: var(--ink) !important;
  font-size: 20px !important;
  font-weight: 600 !important;
}

[id^="scbp-widget-"][id] .scbp-toggle {
  display: grid !important;
  place-items: center !important;
  width: 30px !important;
  height: 30px !important;
  border: 1px solid var(--line) !important;
  border-radius: 50% !important;
  color: var(--red) !important;
  font: 500 22px/1 monospace !important;
}

[id^="scbp-widget-"][id] .scbp-shared > summary > .scbp-toggle {
  position: absolute !important;
  right: 12px !important;
}

[id^="scbp-widget-"][id] .scbp-toggle::after { content: "+" !important; }
[id^="scbp-widget-"][id] details[open] > summary .scbp-toggle::after { content: "−" !important; }

[id^="scbp-widget-"][id] .scbp-services {
  padding: 8px 22px 16px !important;
  border-top: 1px solid var(--line) !important;
}

[id^="scbp-widget-"][id] .scbp-service {
  border: 0 !important;
  border-bottom: 1px solid #ededed !important;
}

[id^="scbp-widget-"][id] .scbp-service > summary {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 15px 0 !important;
  font-size: 18px !important;
  font-weight: 600 !important;
}

[id^="scbp-widget-"][id] .scbp-num {
  color: var(--red) !important;
  font: 500 13px/1.5 monospace !important;
}

[id^="scbp-widget-"][id] .scbp-service-title { flex: 1 !important; }

[id^="scbp-widget-"][id] .scbp-service p {
  padding: 0 42px 18px 36px !important;
  color: var(--muted) !important;
  font-size: 16px !important;
}

/* --- Ako začať --- */

[id^="scbp-widget-"][id] .scbp-steps {
  margin: 22px 0 0 !important;
  padding: 0 !important;
}

[id^="scbp-widget-"][id] .scbp-step-grid {
  display: flex !important;
  align-items: stretch !important; /* Vynúti rovnakú výšku kariet */
  gap: 14px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

[id^="scbp-widget-"][id] .scbp-step {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 0px !important;
  height: auto !important;
  padding: 18px !important;
  background: #fff !important;
  border: 1px solid var(--line) !important;
  border-radius: 14px !important;
}

[id^="scbp-widget-"][id] .scbp-step:first-child {
  background: #fcf5f6 !important;
  border-color: #ecc8ce !important;
}

[id^="scbp-widget-"][id] .scbp-step h3 {
  margin-bottom: 10px !important;
  font-size: 22px !important;
  font-weight: 600 !important;
}

[id^="scbp-widget-"][id] .scbp-step p {
  color: var(--muted) !important;
  font-size: 16px !important;
}

[id^="scbp-widget-"][id] .scbp-step details {
  margin-top: 12px !important;
  background: transparent !important;
}

[id^="scbp-widget-"][id] .scbp-step details summary {
  color: var(--ink) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
}

[id^="scbp-widget-"][id] .scbp-step details p {
  margin-top: 8px !important;
  font-size: 15px !important;
}

/* Tlačidlá zarovnané úplne dole v rovnakej výške */
[id^="scbp-widget-"][id] .scbp-step a.scbp-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  width: auto !important;
  min-height: 44px !important;
  margin-top: auto !important; /* Zatlačí tlačidlo úplne na spodok */
  padding: 10px 16px !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: var(--red) !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

[id^="scbp-widget-"][id] .scbp-step a.scbp-cta:hover {
  background: #b91e34 !important;
}

/* Responsivitá */
@media (max-width: 1000px) {
  [id^="scbp-widget-"][id] .scbp-prices {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 700px) {
  [id^="scbp-widget-"][id] .scbp-prices {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  [id^="scbp-widget-"][id] .scbp-step-grid {
    flex-direction: column !important;
  }
}
/* Izolácia a opravy rozloženia. */
[id^="scbp-widget-"][id] { box-sizing: border-box !important; }
[id^="scbp-widget-"][id] .scbp-price,
[id^="scbp-widget-"][id] .scbp-step,
[id^="scbp-widget-"][id] .scbp-service-title { min-width: 0 !important; }
[id^="scbp-widget-"][id] .scbp-step { margin: 0 !important; }
[id^="scbp-widget-"][id] .scbp-step > p,
[id^="scbp-widget-"][id] .scbp-step > details { margin-bottom: 16px !important; }
[id^="scbp-widget-"][id] .scbp-steps-heading { margin-bottom: 14px !important; }
[id^="scbp-widget-"][id] .scbp-summary-text { text-align: center; padding: 0 !important; }
[id^="scbp-widget-"][id] .scbp-summary-text strong { line-height: 1.3 !important; }
[id^="scbp-widget-"][id] .scbp-num { flex: 0 0 24px; }
[id^="scbp-widget-"][id] .scbp-toggle { flex-shrink: 0; }
[id^="scbp-widget-"][id] summary::before,
[id^="scbp-widget-"][id] summary::after { content: none !important; }
[id^="scbp-widget-"][id] a:focus-visible,
[id^="scbp-widget-"][id] summary:focus-visible { outline: 3px solid var(--red); outline-offset: 4px; }
[id^="scbp-widget-"][id] .scbp-step a.scbp-cta { line-height: 24px !important; }
@media(max-width:700px) {
  [id^="scbp-widget-"][id] .scbp-step { flex: 0 0 auto !important; }
}

/* 1.0.1: odsadenie a viditeľné tlačidlá. */
[id^="scbp-widget-"][id] .scbp-services { padding: 10px 24px 18px !important; }
[id^="scbp-widget-"][id] .scbp-step a.scbp-cta {
  background-color: #d0243c !important; color: #fff !important;
  opacity: 1 !important; visibility: visible !important;
}
[id^="scbp-widget-"][id] .scbp-step a.scbp-cta:hover { background-color: #b91e34 !important; }
@media (max-width:700px) {
  [id^="scbp-widget-"][id] .scbp-services { padding: 8px 16px 16px !important; }
  [id^="scbp-widget-"][id] .scbp-service p { padding: 0 0 16px 36px !important; }
}
/* Kontaktný stĺpec naľavo v pätičke stránky s balíčkami. */



/* 1.0.2: rovnaká šírka a výška všetkých troch tlačidiel. */
[id^="scbp-widget-"][id] .scbp-step a.scbp-cta {
  width: 100% !important;
  min-height: 68px !important;
  box-sizing: border-box !important;
  flex-shrink: 0 !important;
  align-self: stretch !important;
  text-align: center !important;
}


/* 1.0.3: kompaktnejší vrch a rozklik služieb. */
[id^="scbp-widget-"][id] .scbp-scandi-wrap {
  padding-top: 0 !important;
}
[id^="scbp-widget-"][id] .scbp-pricing {
  padding-top: 6px !important;
}
[id^="scbp-widget-"][id] .scbp-shared > summary {
  min-height: 30px !important;
  padding: 4px 42px !important;
}
[id^="scbp-widget-"][id] .scbp-summary-text,
[id^="scbp-widget-"][id] .scbp-summary-text strong {
  margin: 0 !important;
  padding: 0 !important;
  font-family: var(--body) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  color: #555 !important;
  text-decoration: none !important;
}
[id^="scbp-widget-"][id] .scbp-shared > summary > .scbp-toggle {
  width: 24px !important;
  height: 24px !important;
  font-size: 18px !important;
}
/* Pri klávesnici zvýrazniť kartu s fokusom. */
[id^="scbp-widget-"][id] .scbp-step-grid:has(.scbp-step:focus-within) > .scbp-step {
  background: #fff !important;
  border-color: #e2e2e2 !important;
}
[id^="scbp-widget-"][id] .scbp-step-grid > .scbp-step:focus-within {
  background: #fcf5f6 !important;
  border-color: #ecc8ce !important;
}
/* Zvýraznenie sa presúva na kartu pod kurzorom. */
@media (hover: hover) and (pointer: fine) {
  [id^="scbp-widget-"][id] .scbp-step-grid:has(> .scbp-step:hover) > .scbp-step {
    background: #fff !important;
    border-color: #e2e2e2 !important;
  }
  [id^="scbp-widget-"][id] .scbp-step-grid:has(> .scbp-step:hover) > .scbp-step:hover {
    background: #fcf5f6 !important;
    border-color: #ecc8ce !important;
  }
}


/* 1.0.4: jemné stmavnutie cenových kariet v ich vlastnej farbe. */
@media (hover: hover) and (pointer: fine) {
  [id^="scbp-widget-"][id] .scbp-price {
    transition: filter .18s ease;
  }
  [id^="scbp-widget-"][id] .scbp-price:hover {
    filter: brightness(.96);
  }
}
@media (prefers-reduced-motion: reduce) {
  [id^="scbp-widget-"][id] .scbp-price {
    transition: none;
  }
}


/* 1.0.5: rovnaká odseková typografia vo všetkých službách. */
[id^="scbp-widget-"][id] .scbp-service > summary,
[id^="scbp-widget-"][id] .scbp-service-title {
  font-family: var(--body) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
}
[id^="scbp-widget-"][id] .scbp-service p {
  font-family: var(--body) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

/* Overená štruktúra pätičky ScandinavianStudy.sk. */
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container > .grid-33:has(.wpcf7-contact-form-not-found),
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container > .hide-on-desktop {
  display: none !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container {
  display: grid !important;
  grid-template-columns: minmax(0, 340px) minmax(0, 340px) !important;
  justify-content: start !important;
  align-items: start !important;
  column-gap: 28px !important;
  row-gap: 20px !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container::before,
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container::after {
  display: none !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container > .grid-100 {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container > .hide-on-tablet.hide-on-mobile {
  display: block !important;
  width: 100% !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container > .hide-on-tablet.hide-on-mobile > .grid-25,
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container > .grid-33:not(:has(.wpcf7-contact-form-not-found)) {
  display: block !important;
  width: 100% !important;
  float: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}
@media (max-width: 640px) {
  body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* 1.0.7: Mobilne balicky v jednom stlpci, bez rozkliku sluzieb. */
@media (max-width: 700px) {
  [id^="scbp-widget-"][id] .scbp-prices {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  [id^="scbp-widget-"][id] .scbp-shared {
    display: none !important;
  }
}

/* 1.0.8: Mobilny obsah s 12px okrajmi obrazovky. */
@media (max-width: 700px) {
  [id^="scbp-widget-"][id] {
    box-sizing: border-box !important;
    width: calc(100vw - 24px) !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw + 12px) !important;
    margin-right: 0 !important;
  }
  [id^="scbp-widget-"][id] .scbp-scandi-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  [id^="scbp-widget-"][id] .scbp-pricing {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* 1.0.9: Kontakt pod poslednym kontajnerom. */
[id^="scbp-widget-"][id] a.scbp-contact-cta {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: 100% !important;
  margin: 24px 0 0 !important;
  padding: 18px 16px !important;
  background: #d0243c !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 12px !important;
  text-align: center !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
}
[id^="scbp-widget-"][id] .scbp-contact-cta > span {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}
[id^="scbp-widget-"][id] .scbp-contact-cta > strong {
  color: #fff !important;
  font-size: 20px !important;
  font-weight: 700 !important;
}
[id^="scbp-widget-"][id] a.scbp-contact-cta:hover {
  background: #b71e33 !important;
}
[id^="scbp-widget-"][id] a.scbp-contact-cta:focus-visible {
  outline: 3px solid #333 !important;
  outline-offset: 3px !important;
}
[id^="scbp-widget-"][id] .scbp-scandi-wrap {
  padding-bottom: 16px !important;
}
body:has([id^="scbp-widget-"]) .inside-article:has([id^="scbp-widget-"]) {
  padding-bottom: 0 !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets {
  margin-top: 0 !important;
  padding-top: 16px !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container > .grid-100 hr {
  margin-top: 0 !important;
  margin-bottom: 16px !important;
}

/* 1.0.10: Reverzne kontaktne tlacidlo a kompaktna paticka. */
[id^="scbp-widget-"][id] a.scbp-contact-cta {
  background: #fff !important;
  color: #d0243c !important;
  border: 2px solid #d0243c !important;
}
[id^="scbp-widget-"][id] .scbp-contact-cta > span,
[id^="scbp-widget-"][id] .scbp-contact-cta > strong {
  color: #d0243c !important;
}
[id^="scbp-widget-"][id] a.scbp-contact-cta:hover {
  background: #fff3f5 !important;
}
[id^="scbp-widget-"][id] .scbp-scandi-wrap {
  padding-bottom: 0 !important;
}
body:has([id^="scbp-widget-"]) .site-main:has([id^="scbp-widget-"]),
body:has([id^="scbp-widget-"]) .entry-content:has([id^="scbp-widget-"]),
body:has([id^="scbp-widget-"]) article:has([id^="scbp-widget-"]) {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
body:has([id^="scbp-widget-"]) .site-footer {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets {
  padding-top: 8px !important;
}
body:has([id^="scbp-widget-"]) #footer-widgets > .grid-container > .grid-100 hr {
  margin-top: 0 !important;
  margin-bottom: 8px !important;
}

/* Preserve pricing title typography after semantic H2 correction. */
[id^="scbp-widget-"][id] .scbp-intro h2 { font-size:clamp(28px, 3.5vw, 36px) !important; font-weight:700 !important; line-height:1.15 !important; }
