/* RYHA service landing pages – 3.1.111 */
.ryha-service-page,
.ryha-service-parent-fallback {
  --ryha-service-accent: #3cb043;
  --ryha-service-ink: #17201a;
  --ryha-service-muted: #5f6b62;
  --ryha-service-line: #e2e8e3;
  --ryha-service-soft: #f6f9f6;
  --ryha-service-radius: 18px;
  color: var(--ryha-service-ink);
}

.ryha-service-page {
  max-width: 1340px;
  margin: 0 auto;
  padding: 0 20px 56px;
}

/* Managed service landing: only the plugin hero owns the page H1.
   Hide Astra/theme page-title variants and keep only a minimal gap after
   the global RYHA breadcrumb strip. */
body.ryha-service-landing .site-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.ryha-service-landing .site-content > .ast-container {
  width: 100% !important;
  max-width: 1400px !important;
  margin-top: 0 !important;
  padding-top: 10px !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box;
}

body.ryha-service-landing #primary,
body.ryha-service-landing .content-area {
  width: 100% !important;
  max-width: none !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.ryha-service-landing article.page,
body.ryha-service-landing .ast-article-single {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.ryha-service-landing article.page > .entry-header,
body.ryha-service-landing article.page .entry-header,
body.ryha-service-landing article.page .entry-title,
body.ryha-service-landing .entry-title,
body.ryha-service-landing .page-title,
body.ryha-service-landing .ast-page-title,
body.ryha-service-landing .ast-single-post-order > .entry-title {
  display: none !important;
}

body.ryha-service-landing article.page .rank-math-breadcrumb,
body.ryha-service-landing article.page .wp-block-rank-math-breadcrumb,
body.ryha-service-landing article.page .yoast-breadcrumb,
body.ryha-service-landing article.page nav.breadcrumb,
body.ryha-service-landing article.page .breadcrumbs,
body.ryha-service-landing article.page .breadcrumb {
  display: none !important;
}

body.ryha-service-landing article.page .entry-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.ryha-service-landing .ryha-service-page {
  margin-top: 0 !important;
}

.ryha-service-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(370px, .95fr);
  gap: clamp(22px, 3vw, 36px);
  align-items: stretch;
  overflow: hidden;
  padding: clamp(28px, 3.4vw, 42px);
  border: 1px solid #dfe8e0;
  border-radius: 26px;
  background:
    radial-gradient(circle at 0% 0%, rgba(60,176,67,.10), transparent 34%),
    linear-gradient(135deg, #ffffff 0%, #f5f9f5 100%);
  box-shadow: 0 18px 54px rgba(23, 32, 26, .07);
}

.ryha-service-hero::before {
  content: "";
  position: absolute;
  top: -90px;
  left: -90px;
  width: 230px;
  height: 230px;
  border: 38px solid rgba(60,176,67,.045);
  border-radius: 50%;
  pointer-events: none;
}

.ryha-service-hero__main,
.ryha-service-hero__panel {
  position: relative;
  z-index: 1;
}

.ryha-service-hero__main {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.ryha-service-hero__panel {
  align-self: stretch;
  padding: 24px;
  border: 1px solid rgba(39,124,45,.16);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 14px 38px rgba(23, 32, 26, .08);
}

.ryha-service-hero__panel-head {
  margin-bottom: 14px;
  padding-bottom: 13px;
  border-bottom: 1px solid var(--ryha-service-line);
}

.ryha-service-hero__panel-head h3 {
  margin: 8px 0 0;
  font-size: 22px;
  line-height: 1.2;
}

.ryha-service-hero__status {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  font-size: 12.5px;
  font-weight: 800;
  color: #267b2b;
}

.ryha-service-hero__status i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--ryha-service-accent);
  box-shadow: 0 0 0 5px rgba(60,176,67,.11);
}

.ryha-service-issue-list,
.ryha-service-benefits {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ryha-service-issue-list {
  display: grid;
  gap: 8px;
}

.ryha-service-issue-list li {
  position: relative;
  padding-left: 22px;
  color: #39443c;
  line-height: 1.42;
}

.ryha-service-issue-list li::before {
  content: "";
  position: absolute;
  left: 1px;
  top: .65em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--ryha-service-accent);
}

.ryha-service-hero__contact {
  margin-top: 14px;
  padding-top: 13px;
  border-top: 1px solid var(--ryha-service-line);
}

.ryha-service-hero__contact-title {
  margin: 0 0 6px;
  color: #27342b;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.ryha-service-hero__contact-list,
.ryha-service-hero__contact-list > div {
  margin: 0;
}

.ryha-service-hero__contact-list {
  display: block;
}

.ryha-service-hero__contact-list > div {
  display: grid;
  grid-template-columns: 108px minmax(0, 1fr);
  gap: 12px;
  padding: 10px 0;
  border-top: 1px solid var(--ryha-service-line);
}

.ryha-service-hero__contact-list > div:first-child {
  border-top: 0;
  padding-top: 0;
}

.ryha-service-hero__contact-list dt {
  color: var(--ryha-service-muted);
  font-size: 13px;
  line-height: 1.45;
}

.ryha-service-hero__contact-list dd {
  margin: 0;
  color: #263128;
  font-size: 14px;
  line-height: 1.45;
  font-weight: 700;
}

.ryha-service-hero__contact-list a {
  color: #276f2c;
  text-decoration: none !important;
}

.ryha-service-hero__contact-list a:hover {
  text-decoration: underline !important;
}


.ryha-service-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin-top: 22px;
}

.ryha-service-benefits li {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  font-size: 14px;
  font-weight: 700;
  color: #344238;
}

.ryha-service-benefits li span {
  display: inline-flex;
  width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  flex: 0 0 22px;
  border-radius: 50%;
  background: rgba(60,176,67,.12);
  color: #267b2b;
  font-size: 12px;
}

.ryha-service-hero__note {
  max-width: 670px;
  margin: 14px 0 0;
  color: #748078;
  font-size: 13px;
  line-height: 1.55;
}

.ryha-service-eyebrow {
  margin: 0 0 5px;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #267b2b;
}

.ryha-service-hero h1,
.ryha-service-section h2,
.ryha-service-cta h2,
.ryha-service-parent-fallback h2 {
  margin: 0 0 14px;
  color: var(--ryha-service-ink);
  line-height: 1.12;
}

.ryha-service-hero h1 {
  max-width: 760px;
  margin: 0 0 18px;
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.06;
  letter-spacing: -.025em;
}

.ryha-service-lead {
  max-width: 870px;
  margin: 0;
  font-size: clamp(17px, 2vw, 20px);
  line-height: 1.65;
  color: var(--ryha-service-muted);
}

.ryha-service-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.ryha-service-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  padding: 12px 19px;
  border: 1px solid var(--ryha-service-accent);
  border-radius: 11px;
  font-weight: 800;
  text-decoration: none !important;
  transition: transform .15s ease, box-shadow .15s ease, background .15s ease;
}

.ryha-service-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(23, 32, 26, .10);
}

.ryha-service-button--primary {
  background: var(--ryha-service-accent);
  color: #fff !important;
}

.ryha-service-button--secondary {
  background: #fff;
  color: #276f2c !important;
}

.ryha-service-section {
  padding: clamp(38px, 6vw, 66px) 0 0;
}

.ryha-service-section-heading {
  max-width: 820px;
  margin-bottom: 24px;
}

.ryha-service-section-heading > p:not(.ryha-service-eyebrow),
.ryha-service-section--split p,
.ryha-service-card p,
.ryha-service-info-box p,
.ryha-service-faq p,
.ryha-service-cta p {
  color: var(--ryha-service-muted);
  line-height: 1.65;
}

.ryha-service-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.ryha-service-card {
  padding: 22px;
  border: 1px solid var(--ryha-service-line);
  border-radius: var(--ryha-service-radius);
  background: #fff;
  box-shadow: 0 8px 24px rgba(23, 32, 26, .04);
}

.ryha-service-card h3 {
  margin: 0 0 5px;
  font-size: 18px;
  line-height: 1.3;
}

.ryha-service-card p {
  margin: 0;
}

.ryha-service-section--split {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: 28px;
  align-items: start;
}

.ryha-service-info-box {
  padding: 24px;
  border: 1px solid var(--ryha-service-line);
  border-radius: var(--ryha-service-radius);
  background: var(--ryha-service-soft);
}

.ryha-service-info-box h3 {
  margin: 0 0 12px;
}

.ryha-service-info-box dl,
.ryha-service-info-box dl > div {
  margin: 0;
}

.ryha-service-info-box dl > div {
  display: grid;
  grid-template-columns: 130px minmax(0, 1fr);
  gap: 12px;
  padding: 11px 0;
  border-top: 1px solid var(--ryha-service-line);
}

.ryha-service-info-box dt {
  color: var(--ryha-service-muted);
  font-size: 13px;
}

.ryha-service-info-box dd {
  margin: 0;
  font-weight: 700;
}

.ryha-service-info-box a {
  color: #276f2c;
}

.ryha-service-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  padding: 0;
  margin: 0;
  list-style: none;
  counter-reset: ryha-step;
}

.ryha-service-steps li {
  position: relative;
  min-height: 150px;
  padding: 56px 18px 18px;
  border: 1px solid var(--ryha-service-line);
  border-radius: 16px;
  background: #fff;
  counter-increment: ryha-step;
}

.ryha-service-steps li::before {
  content: counter(ryha-step);
  position: absolute;
  top: 16px;
  left: 18px;
  display: inline-flex;
  width: 28px;
  height: 28px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--ryha-service-accent);
  color: #fff;
  font-weight: 800;
}

.ryha-service-steps strong,
.ryha-service-steps span {
  display: block;
}

.ryha-service-steps span {
  margin-top: 7px;
  color: var(--ryha-service-muted);
  line-height: 1.55;
}

.ryha-service-faq details {
  border-top: 1px solid var(--ryha-service-line);
  padding: 16px 0;
}

.ryha-service-faq details:last-child {
  border-bottom: 1px solid var(--ryha-service-line);
}

.ryha-service-faq summary {
  cursor: pointer;
  font-weight: 800;
  color: var(--ryha-service-ink);
}

.ryha-service-faq details p {
  margin: 12px 0 0;
  max-width: 900px;
}

.ryha-service-cta {
  display: flex;
  gap: 28px;
  align-items: center;
  justify-content: space-between;
  margin-top: 58px;
  padding: clamp(24px, 4vw, 38px);
  border-radius: 22px;
  background: #17201a;
  color: #fff;
}

.ryha-service-cta h2,
.ryha-service-cta p {
  color: #fff;
}

.ryha-service-cta p {
  margin-bottom: 0;
  opacity: .85;
}

.ryha-service-cta .ryha-service-eyebrow {
  color: #8bdd91;
}


/* Parent repair-page quick navigation: always exposes managed SEO landings. */
/* Parent page enhancement. */



body.page-slug-sodo-technikos-remontas .ryha-service-card-title-link,
body.page-slug-sodo-technikos-remontas .ryha-service-card-title-link:visited {
  color: inherit !important;
  text-decoration: none !important;
  cursor: pointer;
  transition: color .15s ease, text-decoration-color .15s ease;
}

body.page-slug-sodo-technikos-remontas .ryha-service-card-title-link:hover,
body.page-slug-sodo-technikos-remontas .ryha-service-card-title-link:focus-visible {
  color: #267b2b !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 3px !important;
  text-decoration-color: rgba(38,123,43,.65) !important;
}

@media (max-width: 1160px) {
  .ryha-service-hero {
    grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
    gap: 24px;
  }
}

@media (max-width: 900px) {
  .ryha-service-hero { grid-template-columns: 1fr; }
  .ryha-service-hero__panel { max-width: none; }
  .ryha-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ryha-service-section--split { grid-template-columns: 1fr; }
  .ryha-service-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ryha-service-cta { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 620px) {
  .ryha-service-page { padding-left: 14px; padding-right: 14px; }
  body.ryha-service-landing .site-content > .ast-container { padding-top: 20px; }
  .ryha-service-hero { padding: 24px 18px; border-radius: 18px; }
  .ryha-service-hero__panel { padding: 20px; border-radius: 16px; }
  .ryha-service-benefits { display: grid; gap: 9px; }
  .ryha-service-grid,
  .ryha-service-steps { grid-template-columns: 1fr; }
  .ryha-service-info-box dl > div { grid-template-columns: 1fr; gap: 3px; }
  .ryha-service-parent-card { grid-template-columns: 1fr; }
  .ryha-service-actions { width: 100%; }
  .ryha-service-button { width: 100%; }
  .ryha-service-hero__contact-list > div { grid-template-columns: 1fr; gap: 3px; }
}


/* Service inquiry dialog – 3.1.101 */
.ryha-service-button[type="button"] {
  font: inherit;
  cursor: pointer;
}

.ryha-service-inquiry-dialog {
  width: min(760px, calc(100vw - 32px));
  max-height: min(90vh, 920px);
  margin: auto;
  padding: 0;
  overflow: auto;
  border: 0;
  border-radius: 22px;
  background: #fff;
  color: var(--ryha-service-ink);
  box-shadow: 0 28px 90px rgba(10, 25, 14, .28);
}

.ryha-service-inquiry-dialog::backdrop {
  background: rgba(13, 26, 16, .62);
  backdrop-filter: blur(3px);
}

.ryha-service-inquiry-dialog__inner {
  position: relative;
  padding: clamp(24px, 4vw, 38px);
}

.ryha-service-inquiry-dialog__close {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 38px;
  height: 38px;
  border: 1px solid #e2e8e3;
  border-radius: 50%;
  background: #fff;
  color: #263229;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
}

.ryha-service-inquiry-dialog__head {
  padding-right: 42px;
  margin-bottom: 22px;
}

.ryha-service-inquiry-dialog__head h2 {
  margin: 0 0 10px;
  font-size: clamp(28px, 4vw, 38px);
  line-height: 1.12;
}

.ryha-service-inquiry-dialog__head > p:last-child {
  margin: 0;
  color: var(--ryha-service-muted);
  line-height: 1.6;
}

.ryha-service-form-notice {
  margin: 0 0 20px;
  padding: 13px 15px;
  border-radius: 12px;
  font-weight: 700;
  line-height: 1.45;
}

.ryha-service-form-notice--success {
  border: 1px solid rgba(60, 176, 67, .28);
  background: rgba(60, 176, 67, .10);
  color: #226d27;
}

.ryha-service-form-notice--error {
  border: 1px solid rgba(185, 49, 49, .25);
  background: #fff3f3;
  color: #8b2a2a;
}

.ryha-service-inquiry-form {
  display: grid;
  gap: 18px;
}

.ryha-service-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.ryha-service-inquiry-form label {
  display: grid;
  gap: 7px;
  margin: 0;
}

.ryha-service-inquiry-form label > span {
  color: #354139;
  font-size: 13px;
  font-weight: 800;
}

.ryha-service-inquiry-form label > span em {
  color: #a62828;
  font-style: normal;
}

.ryha-service-inquiry-form input,
.ryha-service-inquiry-form textarea {
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  padding: 11px 13px;
  border: 1px solid #ccd7ce;
  border-radius: 10px;
  background: #fff;
  color: #17201a;
  font: inherit;
  outline: none;
}

.ryha-service-inquiry-form textarea {
  min-height: 130px;
  resize: vertical;
}

.ryha-service-inquiry-form input:focus,
.ryha-service-inquiry-form textarea:focus {
  border-color: var(--ryha-service-accent);
  box-shadow: 0 0 0 3px rgba(60, 176, 67, .12);
}

.ryha-service-captcha {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 180px;
  gap: 18px;
  align-items: end;
  padding: 16px;
  border: 1px solid #dfe8e0;
  border-radius: 14px;
  background: #f7faf7;
}

.ryha-service-captcha > div {
  display: grid;
  gap: 3px;
}

.ryha-service-captcha > div strong {
  font-size: 14px;
}

.ryha-service-captcha > div span,
.ryha-service-form-contact-note {
  color: var(--ryha-service-muted);
  font-size: 12px;
  line-height: 1.5;
}

.ryha-service-form-contact-note {
  margin: -4px 0 0;
}

.ryha-service-form-submit {
  justify-self: start;
  min-width: 190px;
  cursor: pointer;
}

.ryha-service-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

body.ryha-service-dialog-open {
  overflow: hidden;
}

@media (max-width: 620px) {
  .ryha-service-inquiry-dialog {
    width: calc(100vw - 20px);
    max-height: calc(100vh - 20px);
    border-radius: 16px;
  }
  .ryha-service-inquiry-dialog__inner {
    padding: 22px 18px;
  }
  .ryha-service-form-grid,
  .ryha-service-captcha {
    grid-template-columns: 1fr;
  }
  .ryha-service-form-submit {
    width: 100%;
  }
}


/* RYHA 3.1.102 – modal close and shared Google reCAPTCHA. */
.ryha-service-inquiry-dialog .ryha-service-inquiry-dialog__close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  min-height: 38px !important;
  border: 1px solid #dce4de !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #253029 !important;
  box-shadow: 0 4px 14px rgba(18, 35, 22, .08) !important;
  font: 500 26px/1 Arial, sans-serif !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}
.ryha-service-inquiry-dialog .ryha-service-inquiry-dialog__close:hover,
.ryha-service-inquiry-dialog .ryha-service-inquiry-dialog__close:focus-visible {
  background: #f3f7f3 !important;
  color: #1e6724 !important;
  border-color: #b9cfbc !important;
  transform: none !important;
}
.ryha-service-captcha--google {
  grid-template-columns: minmax(160px, .65fr) minmax(304px, 1fr);
  align-items: center;
}
.ryha-service-captcha__copy {
  align-self: center;
}
.ryha-service-captcha__widget {
  min-width: 0;
  overflow: visible;
}
.ryha-service-captcha__widget .anr_captcha_field,
.ryha-service-captcha__widget .gglcptch,
.ryha-service-captcha__widget .g-recaptcha {
  margin: 0 !important;
}
.ryha-service-captcha__active,
.ryha-service-captcha__missing {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}
.ryha-service-captcha__active { color: #27722d; }
.ryha-service-captcha__missing { color: #8b2a2a; }
.ryha-service-form-submit:disabled {
  cursor: not-allowed;
  opacity: .55;
  transform: none !important;
  box-shadow: none !important;
}
@media (max-width: 700px) {
  .ryha-service-captcha--google {
    grid-template-columns: 1fr;
  }
  .ryha-service-captcha__widget {
    overflow-x: auto;
    padding-bottom: 2px;
  }
}

/* RYHA 3.1.104 – wider hero and icon-based contact rows are defined above. */


/* 3.1.107: minimalist contact rows; no nested card or icon tiles. */
@media (max-width: 620px) {
  body.ryha-service-landing .ryha-service-hero__contact {
    margin-top: 18px;
    padding-top: 16px;
  }
  body.ryha-service-landing .ryha-service-contact-row {
    gap: 10px !important;
    padding: 4px 0 !important;
  }
  body.ryha-service-landing .ryha-service-contact-row__icon {
    flex-basis: 20px !important;
    width: 20px !important;
    height: 20px !important;
  }
}

@media (max-width: 620px) {
}


/* SEO cluster enhancements – 3.1.119 */
.ryha-service-help-link {
  display: flex;
  gap: 24px;
  align-items: center;
  justify-content: space-between;
  margin-top: 46px;
  padding: 24px 26px;
  border: 1px solid var(--ryha-service-line);
  border-radius: 18px;
  background: var(--ryha-service-soft);
}
.ryha-service-help-link h2 { margin: 3px 0 7px; font-size: clamp(20px, 2.4vw, 28px); }
.ryha-service-help-link p { margin: 0; color: var(--ryha-service-muted); }
.ryha-service-help-link .ryha-service-button { flex: 0 0 auto; }

.ryha-service-brand-links {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  align-items: center;
  margin-top: 38px;
  padding: 20px 22px;
  border: 1px solid var(--ryha-service-line);
  border-radius: 16px;
  background: #fff;
}
.ryha-service-brand-links strong { margin-right: 6px; }
.ryha-service-brand-links a {
  display: inline-flex;
  padding: 7px 11px;
  border: 1px solid #d9e7da;
  border-radius: 999px;
  color: #267b2b !important;
  font-size: 13px;
  font-weight: 750;
  text-decoration: none !important;
}
.ryha-service-brand-links a:hover { background: #f2f8f2; border-color: #bcd9be; }

@media (max-width: 720px) {
  .ryha-service-help-link { align-items: flex-start; flex-direction: column; }
  .ryha-service-help-link .ryha-service-button { width: 100%; }
}


/* 3.1.119 – local service area lives inside the existing contact list. */
.ryha-service-hero__contact-list > .ryha-service-hero__area-row {
  grid-template-columns: 1fr;
  gap: 4px;
  padding-top: 11px;
}
.ryha-service-hero__area-row dt {
  color: #354139;
  font-weight: 750;
}
.ryha-service-hero__area-row dd {
  color: var(--ryha-service-muted);
  font-weight: 550;
  line-height: 1.5;
}

/* Contextual link is inserted into the help page's existing service CTA. */
.ryha-help-existing-service-link {
  display: inline-flex !important;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  margin-left: 10px;
  padding: 11px 18px;
  border: 1px solid #2f8f36;
  border-radius: 10px;
  background: #fff;
  color: #287c2e !important;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none !important;
  white-space: nowrap;
}
.ryha-help-existing-service-link:hover {
  background: #f3f9f3;
  color: #1f6925 !important;
}
@media (max-width: 720px) {
  .ryha-help-existing-service-link {
    width: 100%;
    margin: 10px 0 0;
    white-space: normal;
  }
}


/* 3.1.119: contextual parts linking */
.ryha-service-parts-link,
.ryha-brand-parts-link {
  margin-top: 24px;
  padding: 24px 26px;
  border: 1px solid var(--ryha-service-line);
  border-radius: 18px;
  background: #f8fbf8;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,.8fr);
  gap: 26px;
  align-items: center;
}
.ryha-service-parts-link h2,
.ryha-brand-parts-link h2 { margin: 4px 0 8px; font-size: clamp(22px,2vw,30px); line-height: 1.15; }
.ryha-service-parts-link p,
.ryha-brand-parts-link p { margin: 0; color: var(--ryha-service-muted); }
.ryha-service-parts-link__links,
.ryha-brand-parts-link__links { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.ryha-service-parts-link__links a,
.ryha-brand-parts-link__links a {
  display:inline-flex; align-items:center; min-height:38px; padding:8px 12px;
  border:1px solid rgba(60,176,67,.28); border-radius:10px; background:#fff;
  color:#276f2c; font-weight:700; font-size:13px; text-decoration:none !important;
}
.ryha-service-parts-link__links a:hover,
.ryha-brand-parts-link__links a:hover { border-color:#3cb043; background:#f1faf2; }
.ryha-help-parts-link {
  max-width: 1180px; margin: 22px auto; padding: 16px 18px; border:1px solid #dce8dd;
  border-radius:14px; background:#fbfdfb; color:#29342c;
}
.ryha-help-parts-link > strong { display:block; margin-bottom:9px; font-size:15px; }
.ryha-help-parts-link__links { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:8px; }
.ryha-help-parts-link__links a { display:inline-flex; padding:6px 10px; border-radius:999px; background:#eef8ef; color:#28752e; font-weight:700; font-size:13px; text-decoration:none !important; }
.ryha-help-parts-link > span { display:block; color:#6a746d; font-size:12px; }
@media (max-width: 760px) {
  .ryha-service-parts-link,.ryha-brand-parts-link { grid-template-columns:1fr; padding:18px; gap:16px; }
  .ryha-service-parts-link__links,.ryha-brand-parts-link__links { justify-content:flex-start; }
}


/* 3.1.119 – compact contextual category cards on help articles */
/* Help article: compact category cards. Full-row rules also prevent the following
 * "Kiti naudingi klausimai" block from being pulled into the same flex/grid row. */
.ryha-help-required-products {
  width:100% !important;
  max-width:1180px;
  margin:26px auto 32px;
  clear:both;
  grid-column:1 / -1 !important;
  flex:0 0 100% !important;
  box-sizing:border-box;
}
.ryha-help-required-products h2 {
  margin:0 0 13px;
  font-size:clamp(23px,1.8vw,28px);
  line-height:1.18;
  color:#202a23;
}
.ryha-help-required-products__grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  width:100%;
}
.ryha-help-required-card {
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:142px;
  overflow:hidden;
  border:1px solid #dce7dd;
  border-radius:14px;
  background:#fff;
  color:#203126;
  text-decoration:none !important;
  box-shadow:0 5px 18px rgba(31,55,36,.035);
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.ryha-help-required-card:hover {
  transform:translateY(-2px);
  border-color:#a9d3ad;
  box-shadow:0 10px 24px rgba(31,55,36,.075);
}
.ryha-help-required-card__image {
  display:flex;
  align-items:center;
  justify-content:center;
  height:88px;
  padding:8px 10px;
  background:linear-gradient(180deg,#fff 0%,#f8fbf8 100%);
  box-sizing:border-box;
}
.ryha-help-required-card__image img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}
.ryha-help-required-card__placeholder {
  background:linear-gradient(145deg,#f8fbf8 0%,#f0f7f1 100%);
}
.ryha-help-required-card__placeholder > span {
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:12px;
  color:#3c9f43;
  background:#e6f4e7;
}
.ryha-help-required-card__placeholder svg {
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.55;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ryha-help-required-card__label {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:7px;
  min-height:48px;
  padding:9px 10px 10px 12px;
  border-top:1px solid #e6eee7;
  background:#fff;
  color:#245f2a;
  font-size:12.5px;
  line-height:1.25;
  box-sizing:border-box;
}
.ryha-help-required-card__label strong {
  min-width:0;
  font-weight:800;
}
.ryha-help-required-card__label i {
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  flex:0 0 24px;
  border:1px solid #b9dbbc;
  border-radius:50%;
  color:#2f9236;
  background:#f4faf4;
  font-style:normal;
  font-weight:800;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
.ryha-help-required-card:hover .ryha-help-required-card__label i {
  color:#fff;
  background:#35a43c;
  border-color:#35a43c;
}
@media (max-width:1100px){
  .ryha-help-required-products__grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:640px){
  .ryha-help-required-products{margin:22px auto 26px;}
  .ryha-help-required-products__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
  .ryha-help-required-card{min-height:126px;}
  .ryha-help-required-card__image{height:76px;}
  .ryha-help-required-card__label{font-size:12px;min-height:46px;padding:8px 8px 9px 10px;}
}


/* 3.1.122 – related questions always start on a fresh full-width row */
.ryha-help-related-title {
  display:block !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  grid-column:1 / -1 !important;
  flex:0 0 100% !important;
  clear:both !important;
  margin:30px 0 14px !important;
  color:#202a23 !important;
  font-size:clamp(23px,1.8vw,28px) !important;
  line-height:1.18 !important;
  text-align:left !important;
}

/* Help-page layouts differ between older generated pages. If the heading is a
 * direct child of a flex container, allow the row to wrap so the 100% basis can
 * actually create a new line. Harmless for grid/block containers. */
*:has(> .ryha-help-related-title) {
  flex-wrap:wrap;
}

@media (max-width:640px){
  .ryha-help-related-title { margin:24px 0 12px !important; }
}


/* 3.1.123: stronger hub links without adding another large content block. */
.ryha-service-parts-link__all {
  display: inline-flex;
  margin-top: 9px;
  color: #287d2e !important;
  font-size: 13px;
  font-weight: 850;
  text-decoration: none !important;
}
.ryha-service-parts-link__all:hover { text-decoration: underline !important; }
.ryha-help-required-products__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
}
.ryha-help-required-products__head h2 { margin: 0; }
.ryha-help-required-products__head > a {
  color: #287d2e !important;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none !important;
  white-space: nowrap;
}
.ryha-help-required-products__head > a:hover { text-decoration: underline !important; }
@media (max-width: 680px) {
  .ryha-help-required-products__head { align-items: flex-start; flex-direction: column; gap: 5px; }
}
