/*
 Theme Name:   bootScore Child
 Description:  bootScore Child Theme
*/

div#page {
  background: #09080d;
  height: auto;
}

header.entry-header {
  height: 400px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 20px;
  margin-bottom: 50px;
}

header.entry-header img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

header.entry-header h1 {
  position: relative;
  margin-bottom: 0;
  font-size: 22px;
  padding-top: 80px;
}

.entry-content {
  margin: 0 auto;
  position: relative;
  width: 90%;
  max-width: 1366px;
}

.page-text h2 {
  font-size: 17px;
  line-height: 1.3;
}

.page-text h3 {
  font-size: 16px;
  line-height: 1.3;
  text-align: center;
}
p strong {
  font-size: 15px !important;
}
.page-text a {
  color: #b39563;
}
.page-text p {
    text-align: justify;
}
.page-sidebar-block {
  margin: 50px auto;
  border: 1px solid #808080;
  border-radius: 0.5rem;
}

.sidebar-content {
}

.sidebar-content section {
  background: #201f24;
  margin-bottom: 0 !important;
}

.sidebar-content section h2 {
  text-align: center;
  border-bottom: 1px solid #808080;
  border-radius: 0 !important;
}

.sidebar-mini-menu h4 {
  font-size: 14px;
  line-height: 1.4;
}

.sidebar-mini-menu a {
  color: #b39563;
  text-transform: capitalize;
  text-decoration: none;
  margin: 5px 5px !important;
  display: inline-block;
  font-size: 15px;
}

.right-content-image, .left-content-image {
    width: 100%;
    display: block;
    margin-bottom: 15px;
    object-fit: cover;
    object-position: center;
}

h2.services-page-title {
    text-align: center;
    display: block;
    width: 100%;
    margin-bottom: 20px;
}

.services-page-links-holder {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 20px;
}
.services-page-links-holder a {
    width: 49%;
    text-align: center;
    text-decoration: none;
    margin-bottom: 2%;
}

.services-page-links-holder a p {min-height: 45px;display: flex;justify-content: center;align-items: center;margin-bottom: 0;margin-top: 10px;text-wrap: balance;text-align: center;}

.services-page-links-holder a img {
    height: 200px;
    width: 100%;
    object-fit: cover;
    object-position: center;
}


@media only screen and (min-width: 600px) {
  
header.entry-header h1 {
    text-align: center;
    max-width: 1080px;
}
.right-content-image, .left-content-image {
  display: inline-block !important;
  width: 45% !important;
  margin-top: 5px;
}
  .right-content-image {
    float: right;
    margin-left: 15px !important;
  }
.left-content-image {
  float: left;
  margin-right: 15px !important;
}
.services-page-links-holder a img {
    height: 50vw;
}
  
}


@media only screen and (min-width: 981px) {
  .entry-content {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    margin-bottom: 50px;
  }

  .page-text {
    width: 65%;
    font-size: 15px;
  }

  .page-sidebar-block {
    margin-top: 0;
    width: 30%;
    margin-left: 5%;
  }
  .services-page-links-holder a img {
    height: 30vw;
    max-height: 500px;
}
}

/* Editor-managed remodeling page templates */

.remodeling-page {
  --remodeling-bg: #09080d;
  --remodeling-surface: #201f24;
  --remodeling-surface-deep: #111019;
  --remodeling-surface-warm: #352e27;
  --remodeling-accent: #b39563;
  --remodeling-accent-soft: #b3956375;
  --remodeling-accent-border: #b3956396;
  --remodeling-text: #fff;
  --remodeling-muted: #dcdcdc;
  --remodeling-muted-soft: #c2c2c2;
  --remodeling-border: #808080;
  --remodeling-border-soft: rgb(255 255 255 / 14%);
  --remodeling-shadow: rgb(0 0 0 / 34%);
  --remodeling-radius: 0.5rem;
  background: var(--remodeling-bg);
  color: var(--remodeling-text);
  min-height: 100vh;
}

.remodeling-page,
.remodeling-page *,
.remodeling-page *::before,
.remodeling-page *::after {
  box-sizing: border-box;
}

.remodeling-page {
  overflow-x: clip;
}

.remodeling-page .remodeling-page-hero {
  min-height: 360px;
  height: auto;
  margin-bottom: 0;
  overflow: hidden;
  isolation: isolate;
  background: var(--remodeling-surface);
}

.remodeling-page .remodeling-page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgb(9 8 13 / 45%), rgb(9 8 13 / 94%));
}

.remodeling-page .remodeling-page-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: 1px;
  background: linear-gradient(to right, transparent, var(--remodeling-accent), transparent);
}

.remodeling-page .remodeling-page-hero-image {
  filter: saturate(0.86) contrast(1.08);
}

.remodeling-page .remodeling-page-hero-inner {
  position: relative;
  z-index: 3;
  width: min(90%, 1160px);
  margin: 0 auto;
  padding-top: 80px;
}

.remodeling-page .entry-title {
  max-width: 980px;
  margin: 0 auto;
  color: var(--remodeling-text);
  font-size: clamp(28px, 4vw, 52px);
  line-height: 1.08;
  text-align: center;
  white-space: normal !important;
  text-wrap: balance;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.remodeling-page .remodeling-content {
  display: block;
  width: min(90%, 1120px);
  max-width: 1120px;
  margin: 0 auto;
  padding: 56px 0 80px;
}

.remodeling-content > *:first-child {
  margin-top: 0;
}

.remodeling-content > *:last-child {
  margin-bottom: 0;
}

.remodeling-content p,
.remodeling-content li {
  color: var(--remodeling-muted);
  font-size: 16px;
  line-height: 1.75;
  overflow-wrap: break-word;
}

.remodeling-content p {
  text-align: left;
}

.remodeling-content a {
  color: var(--remodeling-accent);
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

.remodeling-content a:hover,
.remodeling-content a:focus {
  color: var(--remodeling-text);
  text-decoration-color: var(--remodeling-accent);
}

.remodeling-content h2,
.remodeling-content h3,
.remodeling-content h4 {
  color: var(--remodeling-text);
  line-height: 1.2;
  text-wrap: balance;
}

.remodeling-content h2 {
  margin: 48px 0 18px;
  font-size: clamp(24px, 3vw, 34px);
}

.remodeling-content h3 {
  margin: 32px 0 14px;
  font-size: clamp(19px, 2.2vw, 25px);
  text-align: left;
}

.remodeling-content ul,
.remodeling-content ol {
  padding-left: 1.3rem;
  margin-bottom: 28px;
}

.remodeling-content li + li {
  margin-top: 8px;
}

.remodeling-section {
  padding: 34px 0;
  border-bottom: 1px solid var(--remodeling-border-soft);
}

.remodeling-section:last-child {
  border-bottom: 0;
}

.remodeling-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 20px;
  margin: 32px 0;
}

.remodeling-service-card,
.related-services a {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-height: 100%;
  padding: 22px;
  border: 1px solid var(--remodeling-border);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-surface);
  color: var(--remodeling-text);
  box-shadow: 0 18px 40px var(--remodeling-shadow);
  text-decoration: none;
  transition: border-color 180ms ease, transform 180ms ease, background-color 180ms ease;
}

.remodeling-service-card:hover,
.remodeling-service-card:focus-within,
.related-services a:hover,
.related-services a:focus {
  border-color: var(--remodeling-accent-border);
  background: var(--remodeling-surface-warm);
  transform: translateY(-2px);
}

.remodeling-service-card img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  border-radius: calc(var(--remodeling-radius) - 2px);
}

.remodeling-service-card h2,
.remodeling-service-card h3 {
  margin: 0;
  font-size: 21px;
}

.remodeling-service-card p {
  margin-bottom: 0;
}

.remodeling-service-card .remodeling-card-action {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin-top: auto;
  color: var(--remodeling-accent);
  font-weight: 800;
  line-height: 1.3;
}

a.remodeling-service-card:hover .remodeling-card-action,
a.remodeling-service-card:focus .remodeling-card-action {
  color: var(--remodeling-text);
}

.remodeling-process {
  counter-reset: remodeling-step;
  display: grid;
  gap: 16px;
  margin: 32px 0;
  padding-left: 0;
  list-style: none;
}

.remodeling-process > li,
.remodeling-process .remodeling-process-step {
  position: relative;
  padding: 20px 20px 20px 58px;
  border: 1px solid var(--remodeling-border);
  border-left: 2px solid var(--remodeling-accent);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-surface-deep);
}

.remodeling-process > li::before,
.remodeling-process .remodeling-process-step::before {
  counter-increment: remodeling-step;
  content: counter(remodeling-step);
  position: absolute;
  top: 20px;
  left: 18px;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--remodeling-accent);
  color: #000;
  font-weight: 700;
  line-height: 1;
}

.remodeling-faq {
  display: grid;
  gap: 14px;
  margin: 32px 0;
}

.remodeling-faq details {
  padding: 20px;
  border: 1px solid var(--remodeling-border);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-surface);
}

.remodeling-faq summary {
  cursor: pointer;
  color: var(--remodeling-text);
  font-weight: 600;
}

.related-services {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin: 34px 0;
}

.related-services h2,
.related-services h3 {
  grid-column: 1 / -1;
  margin-bottom: 0;
}

.remodeling-cta {
  margin: 48px 0 0;
  padding: 28px;
  border: 1px solid var(--remodeling-accent-border);
  border-radius: var(--remodeling-radius);
  background: linear-gradient(135deg, var(--remodeling-surface), var(--remodeling-surface-warm));
  box-shadow: 0 18px 40px var(--remodeling-shadow);
}

.remodeling-cta h2,
.remodeling-cta h3 {
  margin-top: 0;
}

.remodeling-cta .wp-block-button__link,
.remodeling-content .wp-block-button__link {
  max-width: 100%;
  border: 1px solid var(--remodeling-accent);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-accent);
  color: #000;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  white-space: normal;
}

.remodeling-cta .wp-block-button__link:hover,
.remodeling-content .wp-block-button__link:hover,
.remodeling-cta .wp-block-button__link:focus,
.remodeling-content .wp-block-button__link:focus {
  background: var(--remodeling-bg);
  color: var(--remodeling-accent);
}

.remodeling-services-hub .remodeling-card-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
}

.remodeling-services-main .remodeling-card-grid {
  align-items: stretch;
}

.remodeling-services-main .remodeling-card-grid > p {
  display: none;
}

.remodeling-services-main .remodeling-card-grid > a.remodeling-service-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.remodeling-services-main .remodeling-card-grid > a.remodeling-service-card::after {
  content: "Към услугата";
  display: inline-flex;
  width: fit-content;
  margin-top: auto;
  color: var(--remodeling-accent);
  font-weight: 800;
  line-height: 1.35;
}

.remodeling-services-main .remodeling-card-grid > a.remodeling-service-card:hover::after,
.remodeling-services-main .remodeling-card-grid > a.remodeling-service-card:focus::after {
  color: var(--remodeling-text);
}

.remodeling-contact-layout .remodeling-card-grid {
  align-items: start;
}

.remodeling-page div#contact-section {
  gap: 14px 0;
  align-items: stretch;
}

.remodeling-page div#contact-section .column-half,
.remodeling-page div#contact-section .column-full {
  min-width: 0;
}

.remodeling-page div#contact-section input[type="text"],
.remodeling-page div#contact-section input[type="email"],
.remodeling-page div#contact-section input[type="tel"],
.remodeling-page div#contact-section textarea,
.remodeling-page div#contact-section .form-select {
  max-width: 100%;
  min-height: 46px;
  font-size: 14px;
}

.remodeling-page div#contact-section input[type="text"]::placeholder,
.remodeling-page div#contact-section input[type="email"]::placeholder,
.remodeling-page div#contact-section input[type="tel"]::placeholder,
.remodeling-page div#contact-section textarea::placeholder {
  font-size: 13px;
}

.remodeling-page div#contact-section button.wpcf7-submit {
  min-height: 46px;
  max-width: 100%;
  font-size: 15px;
}

.remodeling-page .wpcf7 form,
.remodeling-page .wpcf7-form-control-wrap {
  display: block;
  max-width: 100%;
}

@media only screen and (min-width: 701px) {
  .remodeling-contact-layout .remodeling-card-grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(320px, 1.05fr);
  }
}

.remodeling-image-row,
.remodeling-media-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin: 34px 0;
}

.remodeling-image-row {
  grid-template-columns: minmax(0, 1fr);
}

.remodeling-image-block {
  margin: 0;
}

.remodeling-image-frame {
  position: relative;
  display: block;
  width: 100%;
  min-height: 220px;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border: 1px solid var(--remodeling-border);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-surface);
  box-shadow: 0 18px 40px var(--remodeling-shadow);
}

.remodeling-image-frame--wide {
  aspect-ratio: 16 / 7;
}

.remodeling-image-frame--portrait {
  aspect-ratio: 3 / 4;
}

.remodeling-image-frame--square {
  aspect-ratio: 1 / 1;
}

.remodeling-image-frame img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
  object-position: center;
}

.remodeling-image-frame--placeholder {
  display: grid;
  place-items: center;
  border-style: dashed;
  border-color: var(--remodeling-accent-border);
  background:
    linear-gradient(135deg, rgb(9 8 13 / 86%), rgb(32 31 36 / 86%)),
    repeating-linear-gradient(135deg, transparent 0 16px, rgb(179 149 99 / 13%) 16px 17px);
}

.remodeling-image-frame--placeholder::before {
  content: "";
  position: absolute;
  inset: 16px;
  border: 1px solid var(--remodeling-accent-soft);
  border-radius: calc(var(--remodeling-radius) - 2px);
  pointer-events: none;
}

.remodeling-image-placeholder-label {
  position: relative;
  z-index: 1;
  max-width: 72%;
  color: var(--remodeling-muted);
  font-size: 14px;
  line-height: 1.45;
  text-align: center;
  text-wrap: balance;
  overflow-wrap: anywhere;
}

.remodeling-image-caption {
  margin: 10px 0 0;
  color: var(--remodeling-muted-soft);
  font-size: 14px;
  line-height: 1.45;
}

.remodeling-service-landing {
  --remodeling-section-gap: 72px;
  max-width: 100%;
  overflow-wrap: break-word;
}

.remodeling-service-landing .remodeling-section {
  padding: var(--remodeling-section-gap) 0;
}

.remodeling-service-hero-panel {
  position: relative;
  margin-top: -12px;
  padding: clamp(26px, 4vw, 44px);
  overflow: hidden;
  border: 1px solid var(--remodeling-accent-border);
  border-radius: var(--remodeling-radius);
  background:
    radial-gradient(circle at 20% 0%, rgb(179 149 99 / 16%), transparent 34%),
    linear-gradient(135deg, var(--remodeling-surface-deep), var(--remodeling-surface));
  box-shadow: 0 26px 70px rgb(0 0 0 / 42%);
}

.remodeling-service-hero-panel::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 1px;
  background: linear-gradient(to right, transparent, var(--remodeling-accent), transparent);
}

.remodeling-service-hero-grid,
.remodeling-split {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
  gap: clamp(24px, 4vw, 44px);
  align-items: center;
}

.remodeling-service-hero-grid > *,
.remodeling-split > *,
.remodeling-trust-item,
.remodeling-panel,
.remodeling-feature-card,
.remodeling-related-card {
  min-width: 0;
}

.remodeling-eyebrow {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin: 0 0 16px;
  padding: 7px 12px;
  border: 1px solid var(--remodeling-accent-border);
  border-radius: 999px;
  color: var(--remodeling-accent);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.2;
}

.remodeling-lead {
  max-width: 760px;
  margin: 0 0 18px;
  color: var(--remodeling-text);
  font-size: clamp(18px, 2vw, 22px);
  line-height: 1.65;
}

.remodeling-service-landing .remodeling-hero-copy p:last-child,
.remodeling-service-landing .remodeling-panel p:last-child,
.remodeling-service-landing .remodeling-service-card p:last-child,
.remodeling-service-landing .remodeling-related-card p:last-child {
  margin-bottom: 0;
}

.remodeling-hero-actions,
.remodeling-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.remodeling-hero-actions br,
.remodeling-action-row br {
  display: none;
}

.remodeling-button,
.remodeling-content a.remodeling-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  max-width: 100%;
  padding: 13px 18px;
  border: 1px solid var(--remodeling-accent);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-accent);
  color: #050505;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
  transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.remodeling-button:hover,
.remodeling-button:focus,
.remodeling-content a.remodeling-button:hover,
.remodeling-content a.remodeling-button:focus {
  border-color: var(--remodeling-accent);
  background: transparent;
  color: var(--remodeling-accent);
  transform: translateY(-1px);
}

.remodeling-button--secondary,
.remodeling-content a.remodeling-button--secondary {
  background: transparent;
  color: var(--remodeling-accent);
}

.remodeling-button--secondary:hover,
.remodeling-button--secondary:focus,
.remodeling-content a.remodeling-button--secondary:hover,
.remodeling-content a.remodeling-button--secondary:focus {
  background: var(--remodeling-accent);
  color: #050505;
}

.remodeling-benefit-list,
.remodeling-check-list {
  display: grid;
  gap: 10px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}

.remodeling-benefit-list li,
.remodeling-check-list li {
  position: relative;
  padding-left: 24px;
}

.remodeling-benefit-list li::before,
.remodeling-check-list li::before {
  content: "";
  position: absolute;
  top: 0.72em;
  left: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--remodeling-accent);
  box-shadow: 0 0 0 4px rgb(179 149 99 / 15%);
}

.remodeling-trust-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 28px;
}

.remodeling-trust-item,
.remodeling-panel,
.remodeling-feature-card,
.remodeling-related-card {
  padding: 22px;
  border: 1px solid var(--remodeling-border-soft);
  border-radius: var(--remodeling-radius);
  background: linear-gradient(180deg, var(--remodeling-surface), var(--remodeling-surface-deep));
  box-shadow: 0 18px 42px var(--remodeling-shadow);
}

.remodeling-trust-item strong,
.remodeling-feature-card strong,
.remodeling-related-card strong {
  display: block;
  margin-bottom: 8px;
  color: var(--remodeling-text);
  font-size: 16px;
  line-height: 1.35;
}

.remodeling-trust-item p,
.remodeling-feature-card p,
.remodeling-related-card p {
  margin-bottom: 0;
  font-size: 15px;
  line-height: 1.6;
}

.remodeling-included-grid,
.remodeling-case-grid,
.remodeling-price-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
  gap: 16px;
  margin: 30px 0 0;
}

.remodeling-service-kicker {
  margin-bottom: 12px;
  color: var(--remodeling-accent);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
}

.remodeling-process.remodeling-process--premium {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
}

.remodeling-process.remodeling-process--premium > li,
.remodeling-process.remodeling-process--premium .remodeling-process-step {
  min-height: 100%;
  padding: 58px 20px 22px;
  border-left: 1px solid var(--remodeling-border-soft);
  background: linear-gradient(180deg, var(--remodeling-surface), var(--remodeling-surface-deep));
}

.remodeling-process.remodeling-process--premium > li::before,
.remodeling-process.remodeling-process--premium .remodeling-process-step::before {
  top: 20px;
  left: 20px;
}

.remodeling-process-step h3 {
  margin-top: 0;
}

.remodeling-quote-section {
  padding: clamp(24px, 4vw, 34px);
  border: 1px solid var(--remodeling-accent-border);
  border-radius: var(--remodeling-radius);
  background:
    linear-gradient(135deg, rgb(53 46 39 / 82%), rgb(17 16 25 / 94%)),
    var(--remodeling-surface-deep);
  box-shadow: 0 26px 70px rgb(0 0 0 / 42%);
}

.remodeling-form-panel {
  padding: clamp(20px, 3vw, 28px);
  border: 1px solid var(--remodeling-border-soft);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-bg);
}

.remodeling-form-panel .wpcf7 {
  max-width: 100%;
}

.remodeling-form-panel .wpcf7 input[type="text"],
.remodeling-form-panel .wpcf7 input[type="email"],
.remodeling-form-panel .wpcf7 input[type="tel"],
.remodeling-form-panel .wpcf7 textarea,
.remodeling-form-panel .wpcf7 select {
  width: 100%;
  max-width: 100%;
  min-height: 48px;
  border: 1px solid var(--remodeling-border-soft);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-surface-deep);
  color: var(--remodeling-text);
}

.remodeling-form-panel .wpcf7 textarea {
  min-height: 130px;
}

.remodeling-form-panel .wpcf7-submit {
  max-width: 100%;
  border: 1px solid var(--remodeling-accent);
  border-radius: var(--remodeling-radius);
  background: var(--remodeling-accent);
  color: #050505;
  font-weight: 800;
}

.remodeling-form-panel .wpcf7-submit:hover,
.remodeling-form-panel .wpcf7-submit:focus {
  background: transparent;
  color: var(--remodeling-accent);
}

.remodeling-related-card {
  color: var(--remodeling-muted);
}

.remodeling-service-landing .related-services {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
}

@media only screen and (min-width: 781px) {
  .remodeling-page .remodeling-page-hero {
    min-height: 420px;
  }

  .remodeling-page .remodeling-content {
    padding-top: 72px;
  }
}

@media only screen and (max-width: 980px) {
  .remodeling-service-hero-grid,
  .remodeling-split {
    grid-template-columns: 1fr;
  }

  .remodeling-trust-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media only screen and (max-width: 600px) {
  .remodeling-page .remodeling-page-hero {
    min-height: 300px;
  }

  .remodeling-page .remodeling-page-hero-inner {
    width: min(92%, 1120px);
    padding-top: 70px;
  }

  .remodeling-page .entry-title {
    font-size: clamp(14px, 3.5vw, 17px);
    line-height: 1.4;
  }

  .remodeling-page .remodeling-content {
    width: min(92%, 1120px);
    padding: 42px 0 58px;
  }

  .remodeling-card-grid,
  .related-services,
  .remodeling-image-row,
  .remodeling-media-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .remodeling-cta,
  .remodeling-service-card,
  .related-services a {
    padding: 22px;
  }

  .remodeling-image-frame,
  .remodeling-image-frame--wide,
  .remodeling-image-frame--portrait,
  .remodeling-image-frame--square {
    min-height: 210px;
    aspect-ratio: 4 / 3;
  }

  .remodeling-service-landing {
    --remodeling-section-gap: 42px;
  }

  .remodeling-service-hero-panel {
    width: 100%;
    max-width: 100%;
    padding: 18px;
  }

  .remodeling-quote-section {
    width: 100%;
    max-width: 100%;
  }

  .remodeling-trust-strip,
  .remodeling-included-grid,
  .remodeling-case-grid,
  .remodeling-price-grid {
    grid-template-columns: 1fr;
  }

  .remodeling-button,
  .remodeling-content a.remodeling-button {
    width: 100%;
  }
}

@media only screen and (max-width: 900px) {
  .remodeling-page div#contact-section {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .remodeling-page div#contact-section .column-half,
  .remodeling-page div#contact-section .column-full {
    width: 100%;
  }
}

@media only screen and (max-width: 480px) {
  .remodeling-page .remodeling-page-hero {
    min-height: 270px;
  }

  .remodeling-page .remodeling-page-hero-inner {
    width: min(88%, 1120px);
    padding-top: 62px;
  }

  .remodeling-page .remodeling-content {
    width: min(88%, 1120px);
    padding: 34px 0 50px;
  }

  .remodeling-content h2 {
    margin: 34px 0 14px;
    font-size: 23px;
  }

  .remodeling-content h3 {
    margin: 24px 0 12px;
  }

  .remodeling-content p,
  .remodeling-content li {
    font-size: 15px;
    line-height: 1.68;
  }

  .remodeling-section {
    padding: 26px 0;
  }

  .remodeling-card-grid,
  .related-services,
  .remodeling-image-row,
  .remodeling-media-grid {
    margin: 24px 0;
  }

  .remodeling-service-card,
  .related-services a,
  .remodeling-cta {
    padding: 18px;
  }

  .remodeling-cta {
    margin-top: 34px;
  }

  .remodeling-image-frame,
  .remodeling-image-frame--wide,
  .remodeling-image-frame--portrait,
  .remodeling-image-frame--square {
    min-height: 180px;
  }

  .remodeling-image-frame--placeholder::before {
    inset: 12px;
  }
}

/* Homepage-adapted service landing prototype */

.service-homepage-adapted {
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: 100vw;
  margin-left: -50vw;
  overflow: hidden;
  background: var(--remodeling-bg);
  color: var(--remodeling-muted);
}

.service-homepage-adapted .content-container {
  width: min(90%, 1366px);
  max-width: 1366px;
  overflow: visible;
}

.service-homepage-adapted .page-title,
.service-homepage-adapted .header-title,
.service-homepage-adapted .projects-slide-title {
  color: var(--remodeling-text) !important;
  text-wrap: balance;
}

.service-homepage-adapted .par-subtitle {
  color: var(--remodeling-accent);
  text-wrap: balance;
}

.service-homepage-adapted .content-block {
  color: var(--remodeling-muted);
  line-height: 1.75;
  min-width: 0;
  overflow-wrap: break-word;
}

.service-homepage-adapted .content-block p {
  margin-bottom: 1rem;
}

.service-homepage-adapted .content-block ul {
  margin: 18px 0 0;
  padding-left: 1.15rem;
}

.service-homepage-adapted .content-block li {
  list-style: square;
  padding-left: 4px;
}

.service-homepage-adapted .content-block li::marker {
  color: var(--remodeling-accent);
}

.service-homepage-adapted .button,
.service-homepage-adapted .content-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 180px;
  max-width: 100%;
  min-height: 46px;
  margin-right: 12px;
  margin-bottom: 12px;
  padding: 13px 20px;
  border-color: var(--remodeling-border);
  border-radius: 30px;
  color: var(--remodeling-accent) !important;
  text-align: center;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.service-homepage-adapted .button:hover,
.service-homepage-adapted .button:focus,
.service-homepage-adapted .content-btn:hover,
.service-homepage-adapted .content-btn:focus {
  border-color: var(--remodeling-accent);
  background: var(--remodeling-accent);
  color: #050505 !important;
}

.service-page-hero {
  position: relative;
  min-height: min(760px, 92vh);
  display: flex;
  align-items: stretch;
  isolation: isolate;
  background:
    radial-gradient(circle at 72% 28%, rgb(179 149 99 / 22%), transparent 22%),
    linear-gradient(135deg, #09080d 0%, #111019 46%, #201f24 100%);
  border-bottom: 1px solid var(--remodeling-accent-border);
}

.service-page-hero .header-overlay {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 97%), rgb(9 8 13 / 66%) 48%, rgb(9 8 13 / 90%)),
    repeating-linear-gradient(90deg, transparent 0 138px, rgb(179 149 99 / 10%) 139px 141px);
}

.service-page-hero .header-container {
  width: min(95%, 1366px);
  max-height: none;
  min-height: min(760px, 92vh);
  height: auto;
  margin: 0 auto;
  padding: 80px 0 54px;
  gap: clamp(20px, 5vw, 72px);
}

.service-page-hero .header-main-element {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.98fr) minmax(320px, 0.82fr);
  gap: clamp(22px, 4vw, 56px);
  align-items: center;
  width: calc(100% - 50px);
}

.service-page-hero .header-title {
  max-width: 760px;
  margin-bottom: 22px;
  font-size: clamp(28px, 4.5vw, 58px);
  line-height: 1.04;
  text-transform: uppercase;
  overflow-wrap: break-word;
}

.service-page-hero .header-title .subtitle {
  color: var(--remodeling-accent);
  font-size: clamp(14px, 1.8vw, 22px);
  text-transform: none;
}

.service-hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0;
  margin-top: 24px;
}

.service-hero-tags {
  display: grid;
  gap: 12px;
  margin-top: 26px;
  padding: 0;
  list-style: none;
}

.service-hero-tags li {
  position: relative;
  padding-left: 22px;
  color: var(--remodeling-muted);
  font-size: 15px;
}

.service-hero-tags li::before {
  content: "";
  position: absolute;
  top: 0.65em;
  left: 0;
  width: 8px;
  height: 8px;
  border: 1px solid var(--remodeling-accent);
  border-radius: 50%;
  background: var(--remodeling-surface-warm);
}

.service-hero-media {
  position: relative;
  min-height: 420px;
}

.service-hero-media::before,
.service-hero-media::after {
  content: "";
  position: absolute;
  border: 1px solid var(--remodeling-accent-border);
  background:
    linear-gradient(135deg, rgb(9 8 13 / 80%), rgb(32 31 36 / 70%)),
    repeating-linear-gradient(135deg, transparent 0 18px, rgb(179 149 99 / 14%) 18px 19px);
  box-shadow: 0 24px 65px rgb(0 0 0 / 50%);
}

.service-hero-media::before {
  inset: 0 0 52px 62px;
}

.service-hero-media::after {
  inset: 88px 72px 0 0;
  border-style: dashed;
}

.service-hero-media-label {
  position: absolute;
  right: 36px;
  bottom: 44px;
  z-index: 2;
  width: min(78%, 360px);
  padding: 18px;
  border: 1px solid var(--remodeling-accent-border);
  background: rgb(9 8 13 / 76%);
  color: var(--remodeling-text);
  font-family: "micra", arial, sans serfif;
  font-size: 14px;
  line-height: 1.45;
  box-shadow: 0 18px 42px rgb(0 0 0 / 42%);
}

.service-page-hero .header-sidebar-element {
  min-height: inherit;
}

.service-page-hero .header-sidebar-element .vertical-title {
  display: flex;
  align-items: center;
  justify-content: center;
  height: auto;
  min-height: 130px;
  width: 100%;
  margin: 0;
  border: 1px solid rgb(255 255 255 / 12%);
  color: var(--remodeling-muted);
  background: transparent;
  text-transform: none;
}

.service-counter-section {
  background: var(--remodeling-surface);
  max-width: 100%;
  width: 100%;
  border-bottom: 1px solid var(--remodeling-border-soft);
}

.service-counter-section .full-col {
  width: min(90%, 1366px);
}

.service-counter-section .number-counters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  width: 100%;
}

.service-counter-section .counter {
  margin: 0;
  padding: 20px;
  border: 1px solid rgb(255 255 255 / 14%);
  background: #09080d;
}

.service-counter-section .cntr-block {
  width: auto;
  min-width: 72px;
  justify-content: flex-start;
  color: var(--remodeling-accent);
}

.service-homepage-adapted .service-visual-panel {
  position: relative;
  display: grid;
  min-height: 460px;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--remodeling-accent-border);
  background:
    linear-gradient(135deg, rgb(9 8 13 / 84%), rgb(32 31 36 / 70%)),
    repeating-linear-gradient(135deg, transparent 0 18px, rgb(179 149 99 / 13%) 18px 19px);
  box-shadow: 0 28px 70px rgb(0 0 0 / 45%);
}

.service-homepage-adapted .service-visual-panel::before {
  content: "";
  position: absolute;
  inset: 18px;
  border: 1px dashed var(--remodeling-accent-border);
}

.service-visual-panel .service-visual-label {
  position: relative;
  z-index: 2;
  width: min(72%, 420px);
  color: var(--remodeling-text);
  font-family: "micra", arial, sans serfif;
  font-size: clamp(15px, 2vw, 24px);
  line-height: 1.45;
  text-align: center;
  text-wrap: balance;
}

.service-page-split:nth-of-type(even) .service-visual-col {
  order: -1;
}

.service-process-wrapper {
  width: 100%;
  max-width: 100%;
  padding: 0;
}

.service-process-wrapper .services-slider-title {
  background: var(--remodeling-bg);
}

.service-process-stage {
  position: relative;
  min-height: 520px;
  overflow: hidden;
  background:
    linear-gradient(0deg, rgb(9 8 13 / 82%), rgb(9 8 13 / 44%)),
    repeating-linear-gradient(90deg, #15141b 0 120px, #201f24 120px 122px);
}

.service-process-stage .srv-slide-content-holder {
  position: relative;
  width: 100%;
  min-height: 520px;
}

.service-process-stage .srv-slide-dark-col {
  min-height: 520px;
}

.service-process-stage .srv-slide-light-col {
  display: flex;
  align-items: stretch;
}

.service-process-steps {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 1px;
  width: calc(100% - 50px);
  margin-left: auto;
  background: rgb(255 255 255 / 10%);
}

.service-process-step {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 520px;
  padding: 28px 18px;
  background:
    linear-gradient(180deg, rgb(9 8 13 / 12%), rgb(9 8 13 / 92%)),
    var(--remodeling-surface-deep);
}

.service-process-step strong {
  color: var(--remodeling-text);
  font-family: "micra", arial, sans serfif;
  font-size: 16px !important;
  line-height: 1.35;
}

.service-process-step span {
  display: block;
  margin-bottom: auto;
  color: var(--remodeling-accent);
  font-family: "micra", arial, sans serfif;
  font-size: 34px;
  line-height: 1;
}

.service-process-step p {
  margin: 12px 0 0;
  font-size: 14px;
  line-height: 1.55;
}

.service-gallery-section {
  width: 100%;
  max-width: 100%;
  padding: 0;
}

.service-gallery-section .projects-slider-title {
  background: var(--remodeling-surface);
}

.service-gallery-stage {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
  min-height: 620px;
  background: var(--remodeling-bg);
}

.service-gallery-main {
  position: relative;
  min-height: 620px;
  overflow: hidden;
  background:
    linear-gradient(0deg, rgb(9 8 13 / 68%), rgb(9 8 13 / 16%)),
    repeating-linear-gradient(135deg, #111019 0 28px, #201f24 28px 30px);
}

.service-gallery-main .toggle-div {
  position: relative;
  display: block;
}

.service-gallery-main .projects-slide-title,
.service-gallery-main .projects-slide-subtitle em,
.service-gallery-main .projects-slide-subtitle ul {
  position: absolute;
  border: 1px solid var(--remodeling-accent-border);
  background: rgb(9 8 13 / 58%);
  color: var(--remodeling-text);
  padding: 12px;
  backdrop-filter: blur(5px);
}

.service-gallery-main .projects-slide-title {
  top: 8%;
  right: 8%;
  width: min(360px, 42%);
  font-size: clamp(18px, 2vw, 28px);
  text-align: right;
}

.service-gallery-main .projects-slide-subtitle em {
  left: 7%;
  bottom: 28%;
  width: min(320px, 42%);
  font-style: normal;
}

.service-gallery-main .projects-slide-subtitle ul {
  left: 18%;
  bottom: 9%;
  width: min(420px, 56%);
  margin: 0;
}

.service-gallery-thumbs {
  display: grid;
  gap: 14px;
  padding: 28px;
  border-left: 1px solid var(--remodeling-accent-border);
  background: rgb(32 31 36 / 72%);
}

.service-gallery-thumb {
  min-height: 150px;
  padding: 18px;
  border: 1px dashed var(--remodeling-accent-border);
  background:
    linear-gradient(135deg, rgb(9 8 13 / 80%), rgb(32 31 36 / 76%)),
    repeating-linear-gradient(135deg, transparent 0 14px, rgb(179 149 99 / 13%) 14px 15px);
  color: var(--remodeling-muted);
}

.service-gallery-thumb strong {
  display: block;
  margin-bottom: 8px;
  color: var(--remodeling-accent);
  font-size: 13px !important;
  overflow-wrap: anywhere;
}

.service-page-form-section {
  align-items: flex-start;
  border-top: 1px solid var(--remodeling-accent-border);
}

.service-page-form-section .lazy-form {
  padding: clamp(18px, 3vw, 28px);
  border: 1px solid var(--remodeling-accent-border);
  background: var(--remodeling-surface);
  box-shadow: 0 24px 65px rgb(0 0 0 / 42%);
}

.service-page-form-section .accordion {
  margin-top: 24px;
}

.service-homepage-adapted .accordion-item {
  border: 1px solid rgb(255 255 255 / 12%);
  background: var(--remodeling-surface-deep);
}

.service-homepage-adapted .accordion-item + .accordion-item {
  margin-top: 10px;
}

.service-homepage-adapted .accordion-item-header {
  color: var(--remodeling-text);
}

.service-homepage-adapted .accordion-item-header::after {
  color: var(--remodeling-accent);
}

.service-homepage-adapted .accordion-item-body {
  max-height: none;
}

.service-final-cta {
  position: relative;
}

.service-final-cta .full-col {
  width: min(90%, 880px);
  padding: clamp(24px, 4vw, 42px);
  border: 1px dashed var(--remodeling-accent);
  background: var(--remodeling-surface);
  text-align: center;
}

.service-final-cta .full-col::before {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 0;
  height: 0;
  border-bottom: 30px solid var(--remodeling-accent);
  border-left: 30px solid transparent;
}

@media only screen and (max-width: 1180px) {
  .service-process-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .service-process-step {
    min-height: 320px;
  }
}

@media only screen and (max-width: 980px) {
  .service-page-hero .header-container {
    width: min(92%, 1366px);
    padding-top: 70px;
  }

  .service-page-hero .header-main-element {
    grid-template-columns: 1fr;
  }

  .service-hero-media {
    min-height: 320px;
  }

  .service-counter-section .number-counters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-gallery-stage {
    grid-template-columns: 1fr;
  }

  .service-gallery-thumbs {
    border-left: 0;
    border-top: 1px solid var(--remodeling-accent-border);
  }
}

@media only screen and (max-width: 700px) {
  .service-page-hero {
    min-height: auto;
  }

  .service-page-hero .header-container {
    display: block;
    min-height: auto;
    padding: 52px 0 38px;
  }

  .service-page-hero .header-sidebar-element {
    display: none;
  }

  .service-page-hero .header-main-element {
    width: 100%;
  }

  .service-page-hero .header-title {
    font-size: clamp(24px, 9vw, 36px);
  }

  .service-page-hero .header-title-block,
  .service-page-hero .content-block,
  .service-page-hero .service-hero-tags,
  .service-page-hero .service-hero-actions {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: break-word;
  }

  .service-hero-media {
    min-height: 260px;
  }

  .service-hero-media::before {
    inset: 0 0 42px 34px;
  }

  .service-hero-media::after {
    inset: 62px 36px 0 0;
  }

  .service-hero-media-label {
    right: 18px;
    bottom: 22px;
  }

  .service-counter-section .number-counters,
  .service-process-steps {
    grid-template-columns: 1fr;
  }

  .service-process-stage,
  .service-process-stage .srv-slide-content-holder,
  .service-process-stage .srv-slide-dark-col,
  .service-process-step {
    min-height: auto;
  }

  .service-process-stage .srv-slide-content-holder {
    display: block;
  }

  .service-process-stage .srv-slide-dark-col {
    width: 100%;
    margin-left: 0;
    padding: 22px;
  }

  .service-process-stage .srv-slide-dark-col h2 {
    writing-mode: initial;
    height: auto;
    font-size: 22px !important;
  }

  .service-process-stage .srv-slide-light-col,
  .service-process-steps {
    width: 100%;
  }

  .service-process-step {
    padding: 24px 20px;
  }

  .service-gallery-main,
  .service-gallery-stage {
    min-height: 500px;
  }

  .service-gallery-main .projects-slide-title,
  .service-gallery-main .projects-slide-subtitle em,
  .service-gallery-main .projects-slide-subtitle ul {
    left: 18px;
    right: 18px;
    width: auto;
    text-align: left;
  }

  .service-gallery-main .projects-slide-title {
    top: 34px;
  }

  .service-gallery-main .projects-slide-subtitle em {
    bottom: 180px;
  }

  .service-gallery-main .projects-slide-subtitle ul {
    bottom: 34px;
  }

  .service-homepage-adapted .button,
  .service-homepage-adapted .content-btn {
    width: 100%;
    margin-right: 0;
  }
}

@media only screen and (max-width: 600px) {
  .post-430 .entry-title {
    max-width: 86vw;
    font-size: clamp(11px, 3vw, 13px);
    line-height: 1.55;
  }
}

/* Shpaklovka R3: homepage-derived visual repair */

.post-430.remodeling-page-article {
  position: relative;
}

.remodeling-page-article:has(.service-homepage-r3) {
  position: relative;
}

.post-430 .remodeling-page-hero {
  position: absolute;
  inset: 0 0 auto;
  z-index: 8;
  min-height: 0;
  height: auto;
  overflow: visible;
  background: transparent;
  pointer-events: none;
}

.remodeling-page-article:has(.service-homepage-r3) .remodeling-page-hero {
  position: absolute;
  inset: 0 0 auto;
  z-index: 8;
  min-height: 0;
  height: auto;
  overflow: visible;
  background: transparent;
  pointer-events: none;
}

.post-430 .remodeling-page-hero::before,
.post-430 .remodeling-page-hero::after {
  display: none;
}

.remodeling-page-article:has(.service-homepage-r3) .remodeling-page-hero::before,
.remodeling-page-article:has(.service-homepage-r3) .remodeling-page-hero::after {
  display: none;
}

.post-430 .remodeling-page-hero-inner {
  width: min(90%, 1366px);
  margin: 0 auto;
  padding: 0;
}

.remodeling-page-article:has(.service-homepage-r3) .remodeling-page-hero-inner {
  width: min(90%, 1366px);
  margin: 0 auto;
  padding: 0;
}

.post-430 .entry-title {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.remodeling-page-article:has(.service-homepage-r3) .entry-title {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.post-430 .remodeling-content {
  width: 100%;
  max-width: none;
  padding: 0;
  overflow-x: hidden;
}

.remodeling-page-article:has(.service-homepage-r3) .remodeling-content {
  width: 100%;
  max-width: none;
  padding: 0;
  overflow-x: hidden;
}

.post-430 .service-homepage-adapted {
  left: auto;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  overflow-x: hidden;
}

.remodeling-page-article:has(.service-homepage-r3) .service-homepage-adapted {
  left: auto;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  overflow-x: hidden;
}

.service-homepage-r3 {
  --service-r3-fallback-image: url("/wp-content/uploads/2023/09/remonti-varna-hero-large.webp");
  --service-r3-fallback-image-soft: url("/wp-content/uploads/2023/09/predimstva-remontni-uslugi-varna-large.webp");
  --service-r3-container: min(calc(100vw - clamp(40px, 7vw, 150px)), 1480px);
  --service-r3-wide-container: min(calc(100vw - clamp(40px, 6vw, 132px)), 1560px);
  --service-r3-stage-pad: clamp(72px, 7vw, 118px);
  --service-r3-card-pad: clamp(24px, 2.2vw, 34px);
  background: var(--remodeling-bg);
  overflow-x: hidden;
}

.service-homepage-r3 .content-holder {
  background: var(--remodeling-bg);
}

.service-homepage-r3 .content-container {
  width: var(--service-r3-container);
  max-width: var(--service-r3-container);
}

.service-homepage-r3 div#header-block {
  position: relative;
  max-height: none;
  min-height: 790px;
  height: min(100vh, 880px);
  overflow: hidden;
  border-bottom: 1px solid rgb(179 149 99 / 38%);
}

.service-homepage-r3 div#header-block picture,
.service-homepage-r3 div#header-block > img,
.service-homepage-r3 .service-r3-picture {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
}

.service-homepage-r3 div#header-block picture img,
.service-homepage-r3 div#header-block > img,
.service-homepage-r3 .service-r3-picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.78) contrast(1.13) brightness(0.74);
}

.service-homepage-r3 div#header-block .header-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgb(9 8 13 / 97%) 0%, rgb(9 8 13 / 86%) 42%, rgb(9 8 13 / 46%) 68%, rgb(9 8 13 / 88%) 100%),
    linear-gradient(180deg, rgb(9 8 13 / 20%) 0%, rgb(9 8 13 / 76%) 100%);
}

.service-homepage-r3 div#header-block .header-container {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 50px;
  width: var(--service-r3-wide-container);
  max-height: none;
  min-height: inherit;
  height: 100%;
  margin: 0 auto;
  padding: 0;
}

.service-homepage-r3 .header-sidebar-element {
  position: relative;
  display: flex;
  grid-column: 2;
  grid-row: 1;
  width: 50px;
  min-height: 0;
  height: auto;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  align-self: stretch;
  padding: 170px 0 44px;
  border-right: 1px solid rgb(255 255 255 / 10%);
}

.service-homepage-r3 .header-sidebar-element::before {
  content: "";
  width: 1px;
  height: 148px;
  background: var(--remodeling-accent);
}

.service-homepage-r3 .service-r3-rail-label {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  color: rgb(255 255 255 / 64%);
  font-family: "micra", arial, sans-serif;
  font-size: 12px;
  line-height: 1.4;
  text-transform: uppercase;
}

.service-homepage-r3 .scroll-icon {
  display: inline-flex;
  width: 34px;
  height: 34px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgb(179 149 99 / 62%);
  color: var(--remodeling-accent);
  text-decoration: none;
}

.service-homepage-r3 .header-main-element {
  grid-column: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.72fr);
  gap: 64px;
  align-items: center;
  width: 100%;
  padding: 126px 0 74px 70px;
}

.service-homepage-r3 .header-title-block {
  max-width: 780px;
}

.service-homepage-r3 .header-title {
  max-width: 760px;
  margin: 84px 0 24px;
  color: var(--remodeling-text);
  font-size: 57px;
  line-height: 1.04;
  text-align: left;
  text-transform: uppercase;
  text-shadow: 0 6px 28px rgb(0 0 0 / 62%);
}

.service-homepage-r3 .header-title .subtitle {
  display: block;
  color: var(--remodeling-accent);
  font-size: 19px;
  line-height: 1.5;
  text-transform: none;
}

.service-homepage-r3 .service-r3-lead {
  max-width: 650px;
  color: rgb(255 255 255 / 78%);
  font-size: 17px;
  line-height: 1.78;
  overflow-wrap: break-word;
}

.service-homepage-r3 .service-r3-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.service-homepage-r3 .service-r3-actions .button,
.service-homepage-r3 .service-r3-actions .content-btn {
  margin: 0;
}

.service-homepage-r3 .service-r3-hero-card {
  position: relative;
  align-self: end;
  min-height: 450px;
  padding: 30px;
  border: 1px solid rgb(179 149 99 / 46%);
  background:
    linear-gradient(180deg, rgb(9 8 13 / 18%), rgb(9 8 13 / 86%)),
    rgb(9 8 13 / 46%);
  box-shadow: 0 30px 80px rgb(0 0 0 / 58%);
  backdrop-filter: blur(3px);
}

.service-homepage-r3 .service-r3-hero-card::before,
.service-homepage-r3 .service-r3-hero-card::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.service-homepage-r3 .service-r3-hero-card::before {
  inset: 18px;
  border: 1px dashed rgb(179 149 99 / 34%);
}

.service-homepage-r3 .service-r3-hero-card::after {
  right: -1px;
  bottom: -1px;
  width: 0;
  height: 0;
  border-bottom: 42px solid var(--remodeling-accent);
  border-left: 42px solid transparent;
}

.service-homepage-r3 .service-r3-card-kicker,
.service-homepage-r3 .service-r3-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: var(--remodeling-accent);
  font-family: "micra", arial, sans-serif;
  font-size: 13px;
  line-height: 1.4;
}

.service-homepage-r3 .service-r3-card-kicker::before,
.service-homepage-r3 .service-r3-kicker::before {
  content: "";
  display: block;
  width: 42px;
  height: 1px;
  background: var(--remodeling-accent);
}

.service-homepage-r3 .service-r3-trust-list,
.service-homepage-r3 .service-r3-feature-list,
.service-homepage-r3 .service-r3-check-list {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.service-homepage-r3 .service-r3-trust-list {
  position: relative;
  z-index: 2;
  margin-top: 22px;
}

.service-homepage-r3 .service-r3-trust-list li,
.service-homepage-r3 .service-r3-feature-list li,
.service-homepage-r3 .service-r3-check-list li {
  position: relative;
  padding-left: 26px;
  color: rgb(255 255 255 / 76%);
  line-height: 1.58;
}

.service-homepage-r3 .service-r3-trust-list li::before,
.service-homepage-r3 .service-r3-feature-list li::before,
.service-homepage-r3 .service-r3-check-list li::before {
  content: "";
  position: absolute;
  top: 0.62em;
  left: 0;
  width: 9px;
  height: 9px;
  border: 1px solid var(--remodeling-accent);
  background: rgb(179 149 99 / 18%);
}

.service-homepage-r3 .service-r3-counter {
  width: 100%;
  max-width: 100%;
  border-bottom: 1px solid rgb(179 149 99 / 24%);
  background: #201f24;
}

.service-homepage-r3 .service-r3-counter .full-col {
  width: var(--service-r3-container);
  margin: 0 auto;
}

.service-homepage-r3 .service-r3-counter .number-counters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  width: 100%;
}

.service-homepage-r3 .service-r3-counter .counter {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 22px;
  gap: 12px;
  align-items: center;
  border: 1px solid rgb(255 255 255 / 10%);
  background: #09080d;
}

.service-homepage-r3 .service-r3-counter .cntr-block {
  flex: 0 0 auto;
  width: auto;
  justify-content: flex-start;
  color: var(--remodeling-accent);
}

.service-homepage-r3 .service-r3-counter .count-content {
  width: auto;
  min-width: 0;
  margin-left: 0;
}

.service-homepage-r3 .service-r3-counter .count-content .title,
.service-homepage-r3 .service-r3-counter .count-content .subtitle {
  max-width: 100%;
  overflow-wrap: anywhere;
}

.service-homepage-r3 .service-r3-split {
  align-items: center;
  gap: 4%;
  padding-top: var(--service-r3-stage-pad);
  padding-bottom: var(--service-r3-stage-pad);
}

.service-homepage-r3 .service-r3-split:nth-of-type(odd) {
  flex-direction: row-reverse;
}

.service-homepage-r3 .service-r3-split .half-col {
  min-width: 0;
}

.service-homepage-r3 .service-r3-text-panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px 0;
}

.service-homepage-r3 .service-r3-split .page-title {
  margin-bottom: 22px;
  font-size: 34px;
  line-height: 1.18;
}

.service-homepage-r3 .service-r3-split .par-subtitle {
  margin-bottom: 18px;
  color: var(--remodeling-accent);
  font-family: "micra", arial, sans-serif;
  font-size: 14px;
  line-height: 1.5;
}

.service-homepage-r3 .service-r3-photo {
  position: relative;
  align-self: center;
  height: clamp(420px, 44vw, 680px);
  max-height: 680px;
  min-height: 560px;
  overflow: hidden;
  border: 1px solid rgb(179 149 99 / 34%);
  background:
    linear-gradient(180deg, rgb(9 8 13 / 24%), rgb(9 8 13 / 88%)),
    var(--service-r3-fallback-image) center / cover no-repeat,
    #111019;
  box-shadow: 0 30px 80px rgb(0 0 0 / 48%);
}

.service-homepage-r3 .service-r3-photo::before {
  content: "";
  position: absolute;
  inset: 18px;
  z-index: 2;
  border: 1px solid rgb(179 149 99 / 28%);
  pointer-events: none;
}

.service-homepage-r3 .service-r3-photo::after {
  content: attr(data-caption);
  position: absolute;
  right: 22px;
  bottom: 22px;
  z-index: 3;
  max-width: min(68%, 300px);
  padding: 11px 13px;
  border: 1px solid rgb(179 149 99 / 44%);
  background: rgb(9 8 13 / 70%);
  color: var(--remodeling-text);
  font-family: "micra", arial, sans-serif;
  font-size: 11px;
  line-height: 1.38;
}

.service-homepage-r3 .service-r3-photo img {
  width: 100%;
  height: 100%;
  min-height: 560px;
  object-fit: cover;
  filter: saturate(0.72) contrast(1.08) brightness(0.76);
}

.service-homepage-r3 .service-r3-photo-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgb(9 8 13 / 10%), rgb(9 8 13 / 74%)),
    linear-gradient(90deg, rgb(9 8 13 / 24%), transparent 52%);
}

.service-homepage-r3 .service-r3-types {
  width: 100%;
  max-width: 100%;
  padding: 0;
  background: #201f24;
}

.service-homepage-r3 .service-r3-types .services-slider-title {
  position: relative;
  width: var(--service-r3-container);
  margin: 0 auto;
  padding: 82px 0 28px;
}

.service-homepage-r3 .service-r3-type-stage {
  position: relative;
  display: grid;
  grid-template-columns: minmax(360px, 0.38fr) minmax(0, 1fr);
  width: var(--service-r3-wide-container);
  max-width: var(--service-r3-wide-container);
  min-height: 560px;
  margin-right: auto;
  margin-left: auto;
  overflow: hidden;
  border: 1px solid rgb(179 149 99 / 18%);
  background:
    linear-gradient(90deg, rgb(9 8 13 / 92%), rgb(9 8 13 / 70%)),
    var(--service-r3-fallback-image-soft) center / cover no-repeat,
    #09080d;
}

.service-homepage-r3 .service-r3-type-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
}

.service-homepage-r3 .service-r3-type-stage > img,
.service-homepage-r3 .service-r3-type-stage > picture {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.service-homepage-r3 .service-r3-type-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.68) contrast(1.1) brightness(0.48);
}

.service-homepage-r3 .service-r3-type-stage > img,
.service-homepage-r3 .service-r3-type-stage > picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.68) contrast(1.1) brightness(0.48);
}

.service-homepage-r3 .service-r3-type-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgb(9 8 13 / 96%) 0%, rgb(9 8 13 / 76%) 48%, rgb(9 8 13 / 30%) 100%),
    repeating-linear-gradient(90deg, transparent 0 148px, rgb(179 149 99 / 12%) 148px 150px);
}

.service-homepage-r3 .service-r3-type-intro,
.service-homepage-r3 .service-r3-type-grid {
  position: relative;
  z-index: 2;
}

.service-homepage-r3 .service-r3-type-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(42px, 4.5vw, 68px);
  border-right: 1px solid rgb(179 149 99 / 28%);
}

.service-homepage-r3 .service-r3-type-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: rgb(255 255 255 / 10%);
}

.service-homepage-r3 .service-r3-type-card {
  display: flex;
  min-height: 280px;
  flex-direction: column;
  justify-content: flex-end;
  padding: var(--service-r3-card-pad);
  background: linear-gradient(180deg, rgb(17 16 25 / 54%), rgb(9 8 13 / 92%));
}

.service-homepage-r3 .service-r3-type-card span {
  color: var(--remodeling-accent);
  font-family: "micra", arial, sans-serif;
  font-size: 13px;
}

.service-homepage-r3 .service-r3-type-card h3 {
  margin: 14px 0 12px;
  color: var(--remodeling-text);
  font-size: 23px;
  line-height: 1.2;
}

.service-homepage-r3 .service-r3-type-card p {
  margin: 0;
  color: rgb(255 255 255 / 72%);
  line-height: 1.62;
}

.service-homepage-r3 .service-r3-process {
  width: 100%;
  max-width: 100%;
  padding: 0;
}

.service-homepage-r3 .service-r3-process .services-slider-title {
  width: var(--service-r3-container);
  margin: 0 auto;
  padding: 88px 0 28px;
}

.service-homepage-r3 .service-r3-process-stage {
  position: relative;
  width: var(--service-r3-wide-container);
  max-width: var(--service-r3-wide-container);
  min-height: 610px;
  margin-right: auto;
  margin-left: auto;
  overflow: hidden;
  border: 1px solid rgb(179 149 99 / 18%);
  background:
    linear-gradient(90deg, rgb(9 8 13 / 92%) 0%, rgb(9 8 13 / 60%) 52%, rgb(9 8 13 / 82%) 100%),
    var(--service-r3-fallback-image) center / cover no-repeat,
    #09080d;
}

.service-homepage-r3 .service-r3-process-stage > img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.68) contrast(1.08) brightness(0.44);
}

.service-homepage-r3 .service-r3-process-stage .service-r3-picture img {
  filter: saturate(0.68) contrast(1.08) brightness(0.44);
}

.service-homepage-r3 .service-r3-process-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgb(9 8 13 / 92%) 0%, rgb(9 8 13 / 62%) 46%, rgb(9 8 13 / 78%) 100%),
    linear-gradient(180deg, rgb(9 8 13 / 24%), rgb(9 8 13 / 88%));
}

.service-homepage-r3 .service-r3-process-stage .srv-slide-content-holder {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(300px, 0.34fr) minmax(0, 1fr);
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 610px;
}

.service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
  display: flex;
  width: auto;
  min-height: 610px;
  flex-direction: column;
  justify-content: center;
  margin-left: 0;
  padding: clamp(34px, 3.4vw, 50px);
  border-right: 1px solid rgb(179 149 99 / 28%);
  background: rgb(9 8 13 / 72%);
}

.service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col h2 {
  width: auto;
  height: auto;
  margin: 0 0 22px;
  writing-mode: initial;
  transform: none;
  font-size: 33px !important;
  line-height: 1.16 !important;
  text-transform: uppercase;
}

.service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col p {
  margin: 0;
  color: rgb(255 255 255 / 72%);
  line-height: 1.7;
}

.service-homepage-r3 .service-r3-process-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  max-width: 100%;
  min-width: 0;
  gap: 1px;
  background: rgb(179 149 99 / 16%);
}

.service-homepage-r3 .service-r3-process-step {
  position: relative;
  display: flex;
  max-width: 100%;
  min-width: 0;
  min-height: clamp(250px, 19vw, 305px);
  overflow-x: clip;
  flex-direction: column;
  justify-content: flex-end;
  padding: var(--service-r3-card-pad);
  border: 1px solid rgb(255 255 255 / 6%);
  background:
    linear-gradient(180deg, rgb(17 16 25 / 62%), rgb(9 8 13 / 92%)),
    rgb(9 8 13 / 66%);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 5%);
}

.service-homepage-r3 .service-r3-process-step:nth-child(even) {
  background:
    linear-gradient(180deg, rgb(32 31 36 / 68%), rgb(9 8 13 / 90%)),
    rgb(9 8 13 / 62%);
}

.service-homepage-r3 .service-r3-process-step:last-child:nth-child(odd) {
  grid-column: span 2;
}

.service-homepage-r3 .service-r3-process-steps:has(> .service-r3-process-step:nth-child(4):last-child) {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.service-homepage-r3 .service-r3-process-step span {
  display: block;
  margin-bottom: auto;
  color: var(--remodeling-accent);
  font-family: "micra", arial, sans-serif;
  font-size: 37px;
}

.service-homepage-r3 .service-r3-process-step strong {
  display: block;
  max-width: 100%;
  color: var(--remodeling-text);
  font-size: 18px !important;
  line-height: 1.32;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}

.service-homepage-r3 .service-r3-process-step p {
  max-width: 100%;
  margin: 12px 0 0;
  color: rgb(255 255 255 / 70%);
  font-size: 14px;
  line-height: 1.55;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}

.service-homepage-r3 .service-r3-gallery {
  width: 100%;
  max-width: 100%;
  padding: 0;
  background: #201f24;
}

.service-homepage-r3 .service-r3-gallery .projects-slider-title {
  width: var(--service-r3-container);
  margin: 0 auto;
  padding: 90px 0 28px;
}

.service-homepage-r3 .service-r3-gallery-stage {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(310px, 0.65fr);
  width: var(--service-r3-wide-container);
  max-width: var(--service-r3-wide-container);
  height: clamp(620px, 42vw, 860px);
  min-height: 640px;
  max-height: 860px;
  margin-right: auto;
  margin-left: auto;
  border: 1px solid rgb(179 149 99 / 18%);
  background:
    linear-gradient(180deg, rgb(9 8 13 / 58%), rgb(9 8 13 / 90%)),
    var(--service-r3-fallback-image-soft) center / cover no-repeat,
    #09080d;
}

.service-homepage-r3 .service-r3-gallery-main,
.service-homepage-r3 .service-r3-gallery-thumb {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgb(17 16 25 / 46%), rgb(9 8 13 / 86%)),
    var(--service-r3-fallback-image) center / cover no-repeat,
    #111019;
}

.service-homepage-r3 .service-r3-gallery-main img,
.service-homepage-r3 .service-r3-gallery-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.7) contrast(1.08) brightness(0.64);
}

.service-homepage-r3 .service-r3-gallery-main {
  height: 100%;
  min-height: 640px;
}

.service-homepage-r3 .service-r3-gallery-main::before,
.service-homepage-r3 .service-r3-gallery-thumb::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgb(9 8 13 / 16%), rgb(9 8 13 / 84%));
}

.service-homepage-r3 .service-r3-gallery-main .projects-slide-title,
.service-homepage-r3 .service-r3-gallery-main .projects-slide-subtitle {
  position: absolute;
  z-index: 2;
}

.service-homepage-r3 .service-r3-gallery-main .projects-slide-title {
  right: 7%;
  bottom: 110px;
  width: min(420px, 48%);
  color: var(--remodeling-text);
  font-size: 34px;
  line-height: 1.15;
  text-align: right;
}

.service-homepage-r3 .service-r3-gallery-main .projects-slide-subtitle {
  right: 7%;
  bottom: 52px;
  width: min(460px, 52%);
  color: rgb(255 255 255 / 76%);
  line-height: 1.6;
  text-align: right;
}

.service-homepage-r3 .service-r3-gallery-thumbs {
  display: grid;
  grid-template-rows: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: rgb(255 255 255 / 12%);
}

.service-homepage-r3 .service-r3-gallery-thumb {
  min-height: 213px;
}

.service-homepage-r3 .service-r3-gallery-thumb strong {
  position: absolute;
  right: 20px;
  bottom: 20px;
  z-index: 2;
  max-width: calc(100% - 40px);
  color: var(--remodeling-text);
  font-size: 18px !important;
  line-height: 1.25;
  text-align: right;
}

.service-homepage-r3 .service-r3-trust {
  background:
    linear-gradient(180deg, rgb(9 8 13 / 100%), rgb(17 16 25 / 100%));
}

.service-homepage-r3 .service-r3-trust .full-col {
  width: min(var(--service-r3-container), 1280px);
  margin: 0 auto;
  padding: 98px 0;
}

.service-homepage-r3 .service-r3-trust-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  gap: 1px;
  margin-top: 30px;
  background: rgb(179 149 99 / 26%);
}

.service-homepage-r3 .service-r3-trust-item {
  min-height: 176px;
  padding: 22px;
  background: #201f24;
}

.service-homepage-r3 .service-r3-trust-item strong {
  display: block;
  margin-bottom: 12px;
  color: var(--remodeling-accent);
  font-size: 15px !important;
  line-height: 1.35;
}

.service-homepage-r3 .service-r3-trust-item p {
  margin: 0;
  color: rgb(255 255 255 / 72%);
  font-size: 14px;
  line-height: 1.55;
}

.service-homepage-r3 .service-r3-form {
  position: relative;
  width: 100%;
  max-width: 100%;
  padding: 0;
  overflow: hidden;
  background: #09080d;
}

.service-homepage-r3 .service-r3-form::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgb(9 8 13 / 94%) 0%, rgb(9 8 13 / 70%) 58%, rgb(9 8 13 / 92%) 100%),
    url("/wp-content/uploads/2023/09/remonti-varna-hero-large.webp") center / cover no-repeat;
  filter: saturate(0.72) contrast(1.08);
}

.service-homepage-r3 .service-r3-form .content-container {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(540px, 1.04fr) minmax(0, 0.96fr);
  align-items: flex-start;
  gap: clamp(34px, 5vw, 68px);
  padding-top: 110px;
  padding-bottom: 110px;
}

.service-homepage-r3 .service-r3-form .half-col {
  width: 100%;
  min-width: 0;
}

.service-homepage-r3 .service-r3-form .accordion {
  margin-top: 28px;
}

.service-homepage-r3 .service-r3-form .accordion-item {
  margin: 10px 0;
  border: 1px solid rgb(179 149 99 / 24%);
  background: rgb(9 8 13 / 72%);
  color: var(--remodeling-text);
}

.service-homepage-r3 .service-r3-form .accordion-item-header {
  color: var(--remodeling-text);
}

.service-homepage-r3 .service-r3-form .accordion-item-header::after {
  color: var(--remodeling-accent);
}

.service-homepage-r3 .service-r3-form .accordion-item-body {
  max-height: none;
}

.service-homepage-r3 .service-r3-form-card {
  width: 100%;
  padding: clamp(28px, 3.1vw, 42px);
  border: 1px solid rgb(179 149 99 / 42%);
  background:
    linear-gradient(180deg, rgb(255 255 255 / 5%), rgb(9 8 13 / 12%)),
    rgb(32 31 36 / 91%);
  box-shadow: 0 30px 80px rgb(0 0 0 / 58%);
}

.service-homepage-r3 .service-r3-form-card .wpcf7 {
  width: 100%;
  max-width: 100%;
  color: var(--remodeling-text);
}

.service-homepage-r3 .service-r3-form-card form.wpcf7-form,
.service-homepage-r3 .service-r3-form-card .lazy-form,
.service-homepage-r3 .service-r3-form-card div#contact-section,
.service-homepage-r3 .service-r3-form-card div#contact-section-container {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: clip;
}

.service-homepage-r3 .service-r3-form-card .lazy-form,
.service-homepage-r3 .service-r3-form-card div#contact-section-container {
  background:
    linear-gradient(180deg, rgb(255 255 255 / 4%), rgb(9 8 13 / 14%));
}

.service-homepage-r3 .service-r3-form-card div#contact-section {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px 18px;
  align-items: start;
  justify-content: initial;
}

.service-homepage-r3 .service-r3-form-card div#contact-section .column-half,
.service-homepage-r3 .service-r3-form-card div#contact-section .column-full,
.service-homepage-r3 .service-r3-form-card div#contact-section p,
.service-homepage-r3 .service-r3-form-card .wpcf7-form-control-wrap,
.service-homepage-r3 .service-r3-form-card .wpcf7-form-control {
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}

.service-homepage-r3 .service-r3-form-card div#contact-section .column-half,
.service-homepage-r3 .service-r3-form-card div#contact-section .column-full {
  width: 100%;
}

.service-homepage-r3 .service-r3-form-card div#contact-section .column-full,
.service-homepage-r3 .service-r3-form-card div#contact-section .radio-buttons {
  grid-column: 1 / -1;
  text-align: left;
}

.service-homepage-r3 .service-r3-form-card div#contact-section p {
  margin: 0;
}

.service-homepage-r3 .service-r3-form-card div#contact-section input,
.service-homepage-r3 .service-r3-form-card div#contact-section textarea,
.service-homepage-r3 .service-r3-form-card div#contact-section select {
  width: 100%;
  max-width: 100%;
  min-height: 44px;
  border-color: rgb(179 149 99 / 24%);
  background: rgb(9 8 13 / 84%);
  color: var(--remodeling-text);
}

.service-homepage-r3 .service-r3-form-card div#contact-section textarea {
  min-height: 126px;
}

.service-homepage-r3 .service-r3-form-card div#contact-section .wpcf7-radio {
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-content: initial;
  gap: 8px 12px;
  overflow-x: clip;
}

.service-homepage-r3 .service-r3-form-card div#contact-section .wpcf7-list-item,
.service-homepage-r3 .service-r3-form-card div#contact-section .wpcf7-list-item label,
.service-homepage-r3 .service-r3-form-card div#contact-section .wpcf7-list-item-label {
  min-width: 0;
  max-width: 100%;
}

.service-homepage-r3 .service-r3-form-card div#contact-section .wpcf7-list-item {
  width: 100% !important;
}

.service-homepage-r3 .service-r3-form-card div#contact-section .wpcf7-list-item input[type="radio"] {
  width: 20px !important;
  min-height: 20px;
  height: 20px;
  max-width: 20px;
}

.service-homepage-r3 .service-r3-form-card div#contact-section .wpcf7-list-item-label {
  overflow-wrap: anywhere;
}

.service-homepage-r3 .service-r3-form-card div#contact-section button.wpcf7-submit,
.service-homepage-r3 .service-r3-form-card input.wpcf7-submit {
  width: 100%;
  min-height: 50px;
  border-color: var(--remodeling-accent);
  background: var(--remodeling-accent);
  color: #09080d;
}

.service-homepage-r3 .service-r3-final {
  position: relative;
  width: 100%;
  max-width: 100%;
  padding: 92px 0;
  background: #201f24;
}

.service-homepage-r3 .service-r3-final .full-col {
  width: min(90%, 920px);
  margin: 0 auto;
  padding: 44px;
  border: 1px dashed var(--remodeling-accent);
  background: #09080d;
  text-align: center;
}

.service-homepage-r3 .service-r3-final .full-col::before {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 0;
  height: 0;
  border-bottom: 34px solid var(--remodeling-accent);
  border-left: 34px solid transparent;
}

.service-homepage-r3 .service-r3-final .service-r3-actions {
  justify-content: center;
}

@media only screen and (max-width: 1280px) {
  .service-homepage-r3 .header-main-element {
    gap: 42px;
    padding-left: 52px;
  }

  .service-homepage-r3 .header-title {
    font-size: 49px;
  }

  .service-homepage-r3 .service-r3-process-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .service-homepage-r3 .service-r3-trust-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  }

  .service-homepage-r3 .service-r3-trust-item:last-child:nth-child(odd) {
    grid-column: auto;
  }
}

@media only screen and (max-width: 1120px) {
  .service-homepage-r3 .service-r3-counter .number-counters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media only screen and (max-width: 1366px) {
  .service-homepage-r3 div#header-block .header-container {
    display: block;
    width: var(--service-r3-container);
  }

  .service-homepage-r3 .header-sidebar-element {
    display: none;
  }

  .service-homepage-r3 .header-main-element {
    width: 100%;
    padding-left: 0;
    gap: clamp(36px, 5vw, 56px);
  }
}

@media only screen and (max-width: 1599px) and (min-width: 1367px) {
  .service-homepage-r3 div#header-block .header-container {
    display: block;
    width: var(--service-r3-container);
  }

  .service-homepage-r3 .header-sidebar-element {
    display: none;
  }

  .service-homepage-r3 .header-main-element {
    width: 100%;
    padding-left: 0;
    gap: clamp(36px, 5vw, 56px);
  }
}

@media only screen and (max-width: 1180px) {
  .service-homepage-r3 .service-r3-process-stage .srv-slide-content-holder,
  .service-homepage-r3 .service-r3-gallery-stage,
  .service-homepage-r3 .service-r3-form .content-container {
    grid-template-columns: 1fr;
  }

  .service-homepage-r3 .service-r3-process-stage,
  .service-homepage-r3 .service-r3-gallery-stage {
    width: var(--service-r3-container);
    max-width: var(--service-r3-container);
  }

  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
    border-right: 0;
    border-bottom: 1px solid rgb(179 149 99 / 28%);
  }

  .service-homepage-r3 .service-r3-type-stage {
    grid-template-columns: minmax(300px, 0.34fr) minmax(0, 1fr);
  }

  .service-homepage-r3 .service-r3-process-stage,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-content-holder,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
    min-height: auto;
  }

  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
    justify-content: flex-start;
  }

  .service-homepage-r3 .service-r3-process-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-homepage-r3 .service-r3-type-card,
  .service-homepage-r3 .service-r3-process-step {
    min-height: clamp(220px, 30vw, 280px);
  }
}

@media only screen and (max-width: 1180px) and (min-width: 900px) {
  .service-homepage-r3 .service-r3-process-steps {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media only screen and (max-width: 980px) {
  .post-430 .remodeling-page-hero-inner {
    padding: 0;
  }

  .post-430 .entry-title {
    font-size: inherit;
  }

  .service-homepage-r3 div#header-block {
    height: auto;
    min-height: 0;
  }

  .service-homepage-r3 div#header-block .header-container {
    display: block;
    grid-template-columns: 1fr;
    width: min(92%, 1366px);
    min-height: 0;
    padding: 0;
  }

  .service-homepage-r3 .header-sidebar-element {
    display: none;
  }

  .service-homepage-r3 .header-main-element {
    grid-template-columns: 1fr;
    width: 100%;
    padding: 164px 0 54px;
  }

  .service-homepage-r3 .header-title {
    max-width: 680px;
    margin-top: 0;
    font-size: 43px;
  }

  .service-homepage-r3 .service-r3-hero-card {
    min-height: 340px;
  }

  .service-homepage-r3 .service-r3-counter .number-counters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .service-homepage-r3 .service-r3-split {
    display: grid;
    grid-template-columns: 1fr;
    gap: 34px;
    padding-top: 78px;
    padding-bottom: 78px;
  }

  .service-homepage-r3 .service-r3-split:nth-of-type(odd) {
    flex-direction: initial;
  }

  .service-homepage-r3 .service-r3-photo,
  .service-homepage-r3 .service-r3-photo img {
    height: clamp(360px, 56vw, 540px);
    max-height: 540px;
    min-height: 430px;
  }

  .service-homepage-r3 .service-r3-type-stage,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-content-holder,
  .service-homepage-r3 .service-r3-gallery-stage,
  .service-homepage-r3 .service-r3-form .content-container {
    grid-template-columns: 1fr;
  }

  .service-homepage-r3 .service-r3-process-stage,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-content-holder,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
    min-height: auto;
  }

  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
    justify-content: flex-start;
  }

  .service-homepage-r3 .service-r3-process-step {
    min-height: 240px;
  }

  .service-homepage-r3 .service-r3-gallery-stage {
    height: auto;
    max-height: none;
  }

  .service-homepage-r3 .service-r3-gallery-main {
    height: clamp(420px, 64vw, 560px);
    min-height: 420px;
  }

  .service-homepage-r3 .service-r3-type-intro,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
    border-right: 0;
    border-bottom: 1px solid rgb(179 149 99 / 28%);
  }

  .service-homepage-r3 .service-r3-gallery-thumbs {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-template-rows: none;
  }

  .service-homepage-r3 .service-r3-gallery-thumb {
    min-height: 180px;
  }
}

@media only screen and (max-width: 700px) {
  .post-430 .remodeling-page-hero-inner {
    width: min(88%, 1366px);
    padding-top: 0;
  }

  .post-430 .entry-title {
    font-size: inherit;
    line-height: inherit;
  }

  .service-homepage-r3 div#header-block .header-overlay {
    background:
      linear-gradient(180deg, rgb(9 8 13 / 88%) 0%, rgb(9 8 13 / 62%) 48%, rgb(9 8 13 / 95%) 100%),
      linear-gradient(90deg, rgb(9 8 13 / 78%), rgb(9 8 13 / 28%));
  }

  .service-homepage-r3 .header-main-element {
    padding: 136px 0 42px;
  }

  .service-homepage-r3 .header-main-element,
  .service-homepage-r3 .header-title-block,
  .service-homepage-r3 .service-r3-lead,
  .service-homepage-r3 .service-r3-hero-card,
  .service-homepage-r3 .service-r3-actions {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .service-homepage-r3 div#header-block .header-container {
    width: calc(100vw - 40px);
    max-width: calc(100vw - 40px);
    min-width: 0;
    margin-right: auto;
    margin-left: auto;
  }

  .service-homepage-r3 .header-title {
    max-width: 100%;
    font-size: 28px;
    line-height: 1.16;
    overflow-wrap: anywhere;
  }

  .service-homepage-r3 .header-title span,
  .service-homepage-r3 .service-r3-trust-list li {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .service-homepage-r3 .header-title .subtitle {
    font-size: 15px;
  }

  .service-homepage-r3 .service-r3-lead {
    font-size: 15px;
    line-height: 1.66;
  }

  .service-homepage-r3 .service-r3-lead p,
  .service-homepage-r3 .content-block p,
  .service-homepage-r3 .content-block li {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .service-homepage-r3 .service-r3-hero-card {
    min-height: 300px;
    padding: 22px;
  }

  .service-homepage-r3 .service-r3-actions .button,
  .service-homepage-r3 .service-r3-actions .content-btn,
  .service-homepage-r3 .service-r3-final .button,
  .service-homepage-r3 .service-r3-final .content-btn {
    width: 100%;
    min-width: 0;
    margin-right: 0;
  }

  .service-homepage-r3 .service-r3-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .service-homepage-r3 .service-r3-counter .number-counters,
  .service-homepage-r3 .service-r3-type-grid,
  .service-homepage-r3 .service-r3-process-steps,
  .service-homepage-r3 .service-r3-trust-grid,
  .service-homepage-r3 .service-r3-gallery-thumbs {
    grid-template-columns: 1fr;
  }

  .service-homepage-r3 .service-r3-process-step:last-child:nth-child(odd) {
    grid-column: auto;
  }

  .service-homepage-r3 .service-r3-process-stage,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-content-holder,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
    min-height: auto;
  }

  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
    justify-content: flex-start;
  }

  .service-homepage-r3 .service-r3-process-steps:has(> .service-r3-process-step:nth-child(4):last-child) {
    grid-template-columns: 1fr;
  }

  .service-homepage-r3 .service-r3-process-step {
    min-height: 220px;
  }

  .service-homepage-r3 .service-r3-counter .counter {
    padding: 18px;
  }

  .service-homepage-r3 .service-r3-split {
    padding-top: 58px;
    padding-bottom: 58px;
  }

  .service-homepage-r3 .service-r3-split .page-title,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col h2,
  .service-homepage-r3 .service-r3-gallery-main .projects-slide-title {
    font-size: 26px !important;
  }

  .service-homepage-r3 .service-r3-photo,
  .service-homepage-r3 .service-r3-photo img {
    min-height: 330px;
  }

  .service-homepage-r3 .service-r3-photo::after {
    right: 14px;
    bottom: 14px;
    max-width: calc(100% - 28px);
    padding: 10px 12px;
    font-size: 10px;
  }

  .service-homepage-r3 .service-r3-type-intro,
  .service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col,
  .service-homepage-r3 .service-r3-type-card,
  .service-homepage-r3 .service-r3-process-step {
    padding: 24px;
  }

  .service-homepage-r3 .service-r3-gallery-main {
    min-height: 430px;
  }

  .service-homepage-r3 .service-r3-gallery-stage {
    min-height: auto;
  }

  .service-homepage-r3 .service-r3-gallery-main .projects-slide-title,
  .service-homepage-r3 .service-r3-gallery-main .projects-slide-subtitle {
    right: 20px;
    left: 20px;
    width: auto;
    text-align: left;
  }

  .service-homepage-r3 .service-r3-gallery-main .projects-slide-title {
    bottom: 114px;
  }

  .service-homepage-r3 .service-r3-gallery-main .projects-slide-subtitle {
    bottom: 34px;
  }

  .service-homepage-r3 .service-r3-form .content-container {
    padding-top: 68px;
    padding-bottom: 68px;
  }

  .service-homepage-r3 .service-r3-form-card,
  .service-homepage-r3 .service-r3-final .full-col {
    padding: 22px;
  }

  .service-homepage-r3 .service-r3-form-card div#contact-section {
    grid-template-columns: 1fr;
    gap: 14px;
  }
}

@media only screen and (max-width: 390px) {
  .post-430 .entry-title {
    font-size: inherit;
  }

  .service-homepage-r3 .header-title {
    font-size: 29px;
  }

  .service-homepage-r3 .service-r3-card-kicker,
  .service-homepage-r3 .service-r3-kicker {
    font-size: 12px;
  }
}

@media only screen and (max-width: 520px) {
  .service-homepage-r3 div#header-block .header-container,
  .service-homepage-r3 .content-container {
    width: calc(100vw - 40px);
    max-width: 430px;
    margin-right: auto;
    margin-left: auto;
  }
}

/* Phase 3P: semantic non-home polish for editor lists, CTAs, captions and wide grids. */
.service-homepage-r3 :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) ul,
.remodeling-page :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) ul {
  display: grid;
  gap: clamp(8px, 0.9vw, 12px);
  margin: clamp(14px, 1.4vw, 20px) 0 0;
  padding: 0;
  list-style: none;
}

.service-homepage-r3 :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li,
.remodeling-page :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li {
  position: relative;
  max-width: 100%;
  padding-left: 20px;
  color: rgb(255 255 255 / 76%);
  line-height: 1.62;
  overflow-wrap: anywhere;
}

.service-homepage-r3 :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li::before,
.remodeling-page :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li::before {
  content: "";
  position: absolute;
  top: 0.78em;
  left: 0;
  width: 6px;
  height: 6px;
  border: 1px solid rgb(179 149 99 / 92%);
  background: rgb(179 149 99 / 30%);
  transform: translateY(-50%);
}

.service-homepage-r3 :is(.service-r3-trust-list, .service-r3-feature-list, .service-r3-check-list) li {
  padding-left: 20px;
}

.service-homepage-r3 :is(.service-r3-trust-list, .service-r3-feature-list, .service-r3-check-list) li::before {
  top: 0.78em;
  width: 6px;
  height: 6px;
}

.service-homepage-r3 :is(.button, .content-btn),
.remodeling-page :is(.button, .content-btn),
.service-homepage-r3 .service-r3-actions :is(a, button),
.remodeling-page .service-r3-actions :is(a, button) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  line-height: 1.15;
  vertical-align: middle;
}

.service-homepage-r3 :is(.button, .content-btn) :is(i, svg),
.remodeling-page :is(.button, .content-btn) :is(i, svg),
.service-homepage-r3 .service-r3-actions :is(i, svg),
.remodeling-page .service-r3-actions :is(i, svg) {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  line-height: 1;
  transform: none;
}

.service-homepage-r3 .service-r3-final .full-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.service-homepage-r3 .service-r3-final .content-block {
  max-width: 820px;
  margin-right: auto;
  margin-left: auto;
}

.service-homepage-r3 .service-r3-final .service-r3-actions,
.remodeling-page .service-r3-final .service-r3-actions {
  justify-content: center;
}

.service-homepage-r3 :is(.service-r3-counter .full-col, .service-r3-trust .full-col, .service-r3-type-stage, .service-r3-process-stage, .service-r3-gallery-stage, .service-r3-form .content-container),
.remodeling-page :is(.remodeling-card-grid, .remodeling-process, .contact-section-container) {
  max-width: min(var(--service-r3-wide-container, 1520px), calc(100vw - clamp(36px, 5vw, 112px)));
  margin-right: auto;
  margin-left: auto;
}

.service-homepage-r3 :is(.service-r3-type-grid, .service-r3-process-steps, .service-r3-trust-grid),
.remodeling-page :is(.remodeling-card-grid, .remodeling-process) {
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
}

.service-homepage-r3 .service-r3-photo::after {
  max-width: min(62%, 270px);
  font-size: 10px;
  letter-spacing: 0;
}

.service-homepage-r3 .service-r3-type-card p + ul,
.service-homepage-r3 .content-block p + ul,
.remodeling-page .content-block p + ul {
  margin-top: 12px;
}

@media only screen and (max-width: 768px) {
  .service-homepage-r3 .service-r3-final .full-col {
    width: calc(100vw - 40px);
    padding: 24px;
  }

  .service-homepage-r3 :is(.service-r3-type-stage, .service-r3-process-stage, .service-r3-gallery-stage, .service-r3-form .content-container),
  .remodeling-page :is(.remodeling-card-grid, .remodeling-process, .contact-section-container) {
    max-width: calc(100vw - 40px);
  }
}

/* Phase 3U: premium non-home visual polish, softer overlays and interaction depth. */
.service-homepage-r3 {
  --remodeling-image-overlay-soft: linear-gradient(180deg, rgb(9 8 13 / 5%), rgb(9 8 13 / 48%));
  --remodeling-image-overlay-strong: linear-gradient(90deg, rgb(9 8 13 / 88%) 0%, rgb(9 8 13 / 64%) 43%, rgb(9 8 13 / 20%) 70%, rgb(9 8 13 / 58%) 100%);
  --remodeling-image-overlay-gold: linear-gradient(135deg, rgb(179 149 99 / 13%), transparent 38%);
  --service-r3-card-border-premium: rgb(179 149 99 / 34%);
  --service-r3-card-shadow-premium: 0 24px 66px rgb(0 0 0 / 36%);
  --service-r3-card-shadow-hover: 0 30px 78px rgb(0 0 0 / 44%);
}

.service-homepage-r3 div#header-block picture img,
.service-homepage-r3 div#header-block > img,
.service-homepage-r3 .service-r3-picture img {
  filter: saturate(0.92) contrast(1.06) brightness(0.9);
}

.service-homepage-r3 div#header-block .header-overlay {
  background:
    var(--remodeling-image-overlay-strong),
    linear-gradient(180deg, rgb(9 8 13 / 10%) 0%, rgb(9 8 13 / 56%) 100%),
    var(--remodeling-image-overlay-gold);
}

.service-homepage-r3 .service-r3-hero-card,
.service-homepage-r3 .service-r3-form-card,
.service-homepage-r3 .service-r3-final .full-col {
  border-color: var(--service-r3-card-border-premium);
  background:
    radial-gradient(circle at 18% 0%, rgb(179 149 99 / 12%), transparent 34%),
    linear-gradient(180deg, rgb(255 255 255 / 6%), rgb(9 8 13 / 16%)),
    rgb(17 16 25 / 82%);
  box-shadow: var(--service-r3-card-shadow-premium);
}

.service-homepage-r3 .service-r3-hero-card {
  backdrop-filter: blur(5px);
}

.service-homepage-r3 .service-r3-counter .counter,
.service-homepage-r3 .service-r3-type-card,
.service-homepage-r3 .service-r3-process-step,
.service-homepage-r3 .service-r3-gallery-thumb,
.service-homepage-r3 .service-r3-trust-item,
.remodeling-service-card,
.remodeling-panel,
.remodeling-feature-card,
.remodeling-related-card,
.remodeling-process > li,
.remodeling-process .remodeling-process-step,
.remodeling-cta {
  transition:
    border-color 180ms ease,
    background-color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.service-homepage-r3 .service-r3-counter .counter,
.service-homepage-r3 .service-r3-type-card,
.service-homepage-r3 .service-r3-process-step,
.service-homepage-r3 .service-r3-trust-item {
  border-color: rgb(179 149 99 / 20%);
  background:
    radial-gradient(circle at 18% 0%, rgb(179 149 99 / 8%), transparent 34%),
    linear-gradient(180deg, rgb(32 31 36 / 72%), rgb(9 8 13 / 86%));
}

.service-homepage-r3 .service-r3-type-card:hover,
.service-homepage-r3 .service-r3-process-step:hover,
.service-homepage-r3 .service-r3-gallery-thumb:hover,
.service-homepage-r3 .service-r3-trust-item:hover,
.remodeling-service-card:hover,
.remodeling-service-card:focus-within,
.remodeling-panel:hover,
.remodeling-feature-card:hover,
.remodeling-related-card:hover,
.remodeling-process > li:hover,
.remodeling-process .remodeling-process-step:hover,
.remodeling-cta:hover {
  border-color: rgb(179 149 99 / 52%);
  box-shadow: var(--service-r3-card-shadow-hover);
  transform: translateY(-3px);
}

.service-homepage-r3 .service-r3-photo {
  background:
    var(--remodeling-image-overlay-soft),
    var(--service-r3-fallback-image) center / cover no-repeat,
    #111019;
  box-shadow: 0 28px 72px rgb(0 0 0 / 36%);
}

.service-homepage-r3 .service-r3-photo img {
  filter: saturate(0.9) contrast(1.05) brightness(0.9);
  transition: filter 220ms ease, transform 420ms ease;
}

.service-homepage-r3 .service-r3-photo-overlay {
  background:
    linear-gradient(180deg, rgb(9 8 13 / 2%), rgb(9 8 13 / 42%)),
    linear-gradient(90deg, rgb(9 8 13 / 14%), transparent 58%);
}

.service-homepage-r3 .service-r3-photo::after {
  background: rgb(9 8 13 / 58%);
  box-shadow: 0 12px 34px rgb(0 0 0 / 34%);
  backdrop-filter: blur(6px);
}

.service-homepage-r3 .service-r3-photo:hover img {
  transform: scale(1.025);
}

.service-homepage-r3 .service-r3-type-stage {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 82%), rgb(9 8 13 / 50%)),
    var(--service-r3-fallback-image-soft) center / cover no-repeat,
    #09080d;
  box-shadow: 0 24px 68px rgb(0 0 0 / 30%);
}

.service-homepage-r3 .service-r3-type-bg img,
.service-homepage-r3 .service-r3-type-stage > img,
.service-homepage-r3 .service-r3-type-stage > picture img {
  filter: saturate(0.9) contrast(1.04) brightness(0.74);
}

.service-homepage-r3 .service-r3-type-stage::before {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 88%) 0%, rgb(9 8 13 / 64%) 48%, rgb(9 8 13 / 24%) 100%),
    repeating-linear-gradient(90deg, transparent 0 148px, rgb(179 149 99 / 10%) 148px 150px);
}

.service-homepage-r3 .service-r3-process-stage {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 84%) 0%, rgb(9 8 13 / 44%) 52%, rgb(9 8 13 / 68%) 100%),
    var(--service-r3-fallback-image) center / cover no-repeat,
    #09080d;
  box-shadow: 0 24px 68px rgb(0 0 0 / 30%);
}

.service-homepage-r3 .service-r3-process-stage > img,
.service-homepage-r3 .service-r3-process-stage .service-r3-picture img {
  filter: saturate(0.9) contrast(1.04) brightness(0.72);
}

.service-homepage-r3 .service-r3-process-stage::before {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 86%) 0%, rgb(9 8 13 / 52%) 46%, rgb(9 8 13 / 66%) 100%),
    linear-gradient(180deg, rgb(9 8 13 / 14%), rgb(9 8 13 / 58%));
}

.service-homepage-r3 .service-r3-process-stage .srv-slide-dark-col {
  background: rgb(9 8 13 / 66%);
  backdrop-filter: blur(4px);
}

.service-homepage-r3 .service-r3-gallery-stage {
  background:
    linear-gradient(180deg, rgb(9 8 13 / 36%), rgb(9 8 13 / 72%)),
    var(--service-r3-fallback-image-soft) center / cover no-repeat,
    #09080d;
  box-shadow: 0 24px 68px rgb(0 0 0 / 30%);
}

.service-homepage-r3 .service-r3-gallery-main,
.service-homepage-r3 .service-r3-gallery-thumb {
  background:
    linear-gradient(180deg, rgb(17 16 25 / 28%), rgb(9 8 13 / 68%)),
    var(--service-r3-fallback-image) center / cover no-repeat,
    #111019;
}

.service-homepage-r3 .service-r3-gallery-main img,
.service-homepage-r3 .service-r3-gallery-thumb img,
.remodeling-image-frame img,
.remodeling-service-card img {
  filter: saturate(0.9) contrast(1.04) brightness(0.9);
  transition: filter 220ms ease, transform 420ms ease;
}

.service-homepage-r3 .service-r3-gallery-main::before,
.service-homepage-r3 .service-r3-gallery-thumb::before {
  background:
    linear-gradient(180deg, rgb(9 8 13 / 6%), rgb(9 8 13 / 56%)),
    linear-gradient(135deg, transparent 0%, rgb(179 149 99 / 8%) 100%);
}

.service-homepage-r3 .service-r3-gallery-main:hover img,
.service-homepage-r3 .service-r3-gallery-thumb:hover img,
.remodeling-image-frame:hover img,
.remodeling-service-card:hover img,
.remodeling-service-card:focus-within img {
  transform: scale(1.025);
}

.service-homepage-r3 .service-r3-form::before {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 88%) 0%, rgb(9 8 13 / 58%) 58%, rgb(9 8 13 / 78%) 100%),
    url("/wp-content/uploads/2023/09/remonti-varna-hero-large.webp") center / cover no-repeat;
  filter: saturate(0.9) contrast(1.04) brightness(0.9);
}

.service-homepage-r3 .service-r3-form-card div#contact-section input,
.service-homepage-r3 .service-r3-form-card div#contact-section textarea,
.service-homepage-r3 .service-r3-form-card div#contact-section select,
.remodeling-page div#contact-section input[type="text"],
.remodeling-page div#contact-section input[type="email"],
.remodeling-page div#contact-section input[type="tel"],
.remodeling-page div#contact-section textarea,
.remodeling-page div#contact-section .form-select {
  transition: border-color 160ms ease, box-shadow 160ms ease, background-color 160ms ease;
}

.service-homepage-r3 .service-r3-form-card div#contact-section input:focus,
.service-homepage-r3 .service-r3-form-card div#contact-section textarea:focus,
.service-homepage-r3 .service-r3-form-card div#contact-section select:focus,
.remodeling-page div#contact-section input[type="text"]:focus,
.remodeling-page div#contact-section input[type="email"]:focus,
.remodeling-page div#contact-section input[type="tel"]:focus,
.remodeling-page div#contact-section textarea:focus,
.remodeling-page div#contact-section .form-select:focus {
  border-color: rgb(179 149 99 / 76%);
  background: rgb(9 8 13 / 92%);
  box-shadow: 0 0 0 3px rgb(179 149 99 / 14%);
  outline: none;
}

.service-homepage-r3 :is(.button, .content-btn),
.remodeling-page :is(.button, .content-btn, .remodeling-button, .wp-block-button__link),
.service-homepage-r3 .service-r3-form-card div#contact-section button.wpcf7-submit,
.service-homepage-r3 .service-r3-form-card input.wpcf7-submit,
.remodeling-page div#contact-section button.wpcf7-submit {
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.service-homepage-r3 :is(.button, .content-btn):hover,
.service-homepage-r3 :is(.button, .content-btn):focus,
.remodeling-page :is(.button, .content-btn, .remodeling-button, .wp-block-button__link):hover,
.remodeling-page :is(.button, .content-btn, .remodeling-button, .wp-block-button__link):focus,
.service-homepage-r3 .service-r3-form-card div#contact-section button.wpcf7-submit:hover,
.service-homepage-r3 .service-r3-form-card input.wpcf7-submit:hover,
.remodeling-page div#contact-section button.wpcf7-submit:hover {
  box-shadow: 0 12px 32px rgb(179 149 99 / 22%);
  transform: translateY(-2px);
}

.service-homepage-r3 :is(.button, .content-btn):focus-visible,
.remodeling-page :is(.button, .content-btn, .remodeling-button, .wp-block-button__link):focus-visible,
.service-homepage-r3 .service-r3-form-card div#contact-section button.wpcf7-submit:focus-visible,
.service-homepage-r3 .service-r3-form-card input.wpcf7-submit:focus-visible,
.remodeling-page div#contact-section button.wpcf7-submit:focus-visible {
  outline: 2px solid rgb(179 149 99 / 86%);
  outline-offset: 3px;
}

@media only screen and (min-width: 1800px) {
  .service-homepage-r3 {
    --service-r3-container: min(calc(100vw - 220px), 1500px);
    --service-r3-wide-container: min(calc(100vw - 240px), 1600px);
  }
}

@media only screen and (max-width: 700px) {
  .service-homepage-r3 div#header-block .header-overlay {
    background:
      linear-gradient(180deg, rgb(9 8 13 / 82%) 0%, rgb(9 8 13 / 52%) 46%, rgb(9 8 13 / 88%) 100%),
      linear-gradient(90deg, rgb(9 8 13 / 68%), rgb(9 8 13 / 20%));
  }

  .service-homepage-r3 .service-r3-photo-overlay,
  .service-homepage-r3 .service-r3-gallery-main::before,
  .service-homepage-r3 .service-r3-gallery-thumb::before {
    background: linear-gradient(180deg, rgb(9 8 13 / 8%), rgb(9 8 13 / 58%));
  }
}

@media (prefers-reduced-motion: reduce) {
  .service-homepage-r3 *,
  .remodeling-page * {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }

  .service-homepage-r3 :is(.service-r3-photo:hover img, .service-r3-gallery-main:hover img, .service-r3-gallery-thumb:hover img),
  .remodeling-page :is(.remodeling-service-card:hover img, .remodeling-image-frame:hover img),
  .service-homepage-r3 :is(.service-r3-type-card:hover, .service-r3-process-step:hover, .service-r3-gallery-thumb:hover, .service-r3-trust-item:hover),
  .remodeling-page :is(.remodeling-service-card:hover, .remodeling-panel:hover, .remodeling-feature-card:hover, .remodeling-related-card:hover, .remodeling-process > li:hover, .remodeling-process .remodeling-process-step:hover, .remodeling-cta:hover) {
    transform: none;
  }
}

/* Phase 3V: targeted non-home layout fixes and lighter visual layers. */
body:has(.service-homepage-r3) {
  --remodeling-header-control-right: 2.5vw;
}

body:has(.service-homepage-r3) .service-homepage-r3 {
  --remodeling-image-overlay-soft: linear-gradient(180deg, rgb(9 8 13 / 2%), rgb(9 8 13 / 38%));
  --remodeling-image-overlay-strong: linear-gradient(90deg, rgb(9 8 13 / 82%) 0%, rgb(9 8 13 / 56%) 43%, rgb(9 8 13 / 14%) 70%, rgb(9 8 13 / 46%) 100%);
}

body:has(.service-homepage-r3) .service-homepage-r3 div#header-block picture img,
body:has(.service-homepage-r3) .service-homepage-r3 div#header-block > img,
body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-picture img {
  filter: saturate(0.96) contrast(1.04) brightness(0.98);
}

body:has(.service-homepage-r3) .service-homepage-r3 div#header-block .header-overlay {
  background:
    var(--remodeling-image-overlay-strong),
    linear-gradient(180deg, rgb(9 8 13 / 6%) 0%, rgb(9 8 13 / 46%) 100%),
    linear-gradient(135deg, rgb(179 149 99 / 10%), transparent 42%);
}

@media only screen and (min-width: 1600px) {
  body:has(.service-homepage-r3) .service-homepage-r3 div#header-block .header-container {
    overflow: visible;
  }

  body:has(.service-homepage-r3) .service-homepage-r3 .header-sidebar-element {
    position: absolute;
    top: 0;
    right: calc(var(--remodeling-header-control-right) - ((100vw - var(--service-r3-wide-container)) / 2));
    bottom: auto;
    height: 100%;
    min-height: 100%;
    background: #09080d;
  }
}

body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-trust-list, .service-r3-feature-list, .service-r3-check-list),
body:has(.service-homepage-r3) .service-homepage-r3 :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) ul,
body:has(.service-homepage-r3) .remodeling-page :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) ul {
  padding-left: 1.05rem;
  list-style: square outside;
}

body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-trust-list, .service-r3-feature-list, .service-r3-check-list) li,
body:has(.service-homepage-r3) .service-homepage-r3 :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li,
body:has(.service-homepage-r3) .remodeling-page :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li {
  display: list-item;
  padding-left: 0;
  overflow-wrap: anywhere;
}

body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-trust-list, .service-r3-feature-list, .service-r3-check-list) li::before,
body:has(.service-homepage-r3) .service-homepage-r3 :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li::before,
body:has(.service-homepage-r3) .remodeling-page :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li::before {
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  border: 0 !important;
  background: none !important;
}

body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-trust-list, .service-r3-feature-list, .service-r3-check-list) li::marker,
body:has(.service-homepage-r3) .service-homepage-r3 :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li::marker,
body:has(.service-homepage-r3) .remodeling-page :is(.content-block, .service-r3-hero-card, .service-r3-type-card, .service-r3-form-card, .service-r3-final) li::marker {
  color: var(--remodeling-accent);
  font-size: 0.82em;
}

body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-type-stage, .service-r3-process-stage, .service-r3-gallery-stage) {
  box-sizing: border-box;
  padding-right: clamp(18px, 2.1vw, 36px);
  padding-left: clamp(18px, 2.1vw, 36px);
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-gallery-stage {
  background:
    linear-gradient(180deg, rgb(32 31 36 / 42%), rgb(9 8 13 / 78%)),
    #09080d;
}

body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-gallery-main, .service-r3-gallery-thumb) {
  background:
    linear-gradient(180deg, rgb(17 16 25 / 18%), rgb(9 8 13 / 54%)),
    #111019;
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-photo img,
body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-gallery-main img, .service-r3-gallery-thumb img),
body:has(.service-homepage-r3) .remodeling-page :is(.remodeling-image-frame img, .remodeling-service-card img) {
  filter: saturate(0.98) contrast(1.03) brightness(0.98);
}

body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-type-bg img, .service-r3-type-stage > img, .service-r3-type-stage > picture img),
body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-process-stage > img, .service-r3-process-stage .service-r3-picture img) {
  filter: saturate(0.96) contrast(1.03) brightness(0.84);
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-photo-overlay {
  background:
    linear-gradient(180deg, rgb(9 8 13 / 0%), rgb(9 8 13 / 34%)),
    linear-gradient(90deg, rgb(9 8 13 / 10%), transparent 62%);
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-gallery-main::before,
body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-gallery-thumb::before {
  background:
    linear-gradient(180deg, rgb(9 8 13 / 3%), rgb(9 8 13 / 44%)),
    linear-gradient(135deg, transparent 0%, rgb(179 149 99 / 6%) 100%);
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-type-stage::before {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 82%) 0%, rgb(9 8 13 / 54%) 48%, rgb(9 8 13 / 18%) 100%),
    repeating-linear-gradient(90deg, transparent 0 148px, rgb(179 149 99 / 8%) 148px 150px);
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-process-stage::before {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 80%) 0%, rgb(9 8 13 / 44%) 46%, rgb(9 8 13 / 56%) 100%),
    linear-gradient(180deg, rgb(9 8 13 / 8%), rgb(9 8 13 / 46%));
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-form::before {
  background:
    linear-gradient(90deg, rgb(9 8 13 / 80%) 0%, rgb(9 8 13 / 48%) 58%, rgb(9 8 13 / 68%) 100%),
    url("/wp-content/uploads/2023/09/remonti-varna-hero-large.webp") center / cover no-repeat;
  filter: saturate(0.96) contrast(1.03) brightness(0.96);
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-form-card {
  margin-top: clamp(12px, 1.4vw, 22px);
}

body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-type-card, .service-r3-process-step, .service-r3-trust-item) {
  padding-bottom: clamp(20px, 1.9vw, 30px);
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-type-card {
  min-height: clamp(230px, 16vw, 270px);
}

body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-trust-item {
  min-height: clamp(150px, 11vw, 168px);
}

@media only screen and (max-width: 768px) {
  body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-counter, .service-r3-form, .service-r3-final) {
    width: 100vw;
    max-width: 100vw;
    margin-left: 50%;
    transform: translateX(-50%);
  }

  body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-counter .full-col {
    width: 100%;
    max-width: none;
    padding-right: 20px;
    padding-left: 20px;
    box-sizing: border-box;
  }

  body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-form .content-container {
    width: min(calc(100vw - 40px), 430px);
    max-width: min(calc(100vw - 40px), 430px);
    padding-right: 0;
    padding-left: 0;
  }

  body:has(.service-homepage-r3) .service-homepage-r3 .service-r3-final .full-col {
    width: calc(100vw - 40px);
    max-width: 430px;
    margin-right: auto;
    margin-left: auto;
  }

  body:has(.service-homepage-r3) .service-homepage-r3 :is(.service-r3-type-stage, .service-r3-process-stage, .service-r3-gallery-stage) {
    padding-right: clamp(14px, 4vw, 20px);
    padding-left: clamp(14px, 4vw, 20px);
  }
}

/* Phase 3W/3X: location and editorial prototype components. */
.service-homepage-r3.location-seo-r3 {
  --location-r3-readable: min(100%, 920px);
}

.service-homepage-r3.location-seo-r3 .service-r3-longform {
  max-width: var(--location-r3-readable);
}

.service-homepage-r3.location-seo-r3 .service-r3-longform p {
  margin-bottom: 1rem;
}

.service-homepage-r3.location-seo-r3 .service-r3-longform :is(ul, ol) {
  margin: 0 0 1.1rem;
  padding-left: 1.1rem;
}

.service-homepage-r3.location-seo-r3 .service-r3-longform li {
  margin-bottom: 0.48rem;
}

.service-homepage-r3.location-seo-r3 .service-r3-toc {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: clamp(10px, 1vw, 16px);
  margin-top: clamp(18px, 2vw, 28px);
}

.service-homepage-r3.location-seo-r3 .service-r3-toc a,
.service-homepage-r3.location-seo-r3 .service-r3-local-link {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.7rem;
  min-width: 0;
  padding: 0.85rem 1rem;
  border: 1px solid rgb(179 149 99 / 32%);
  background: linear-gradient(135deg, rgb(32 31 36 / 92%), rgb(17 16 25 / 92%));
  color: #fff;
  text-decoration: none;
  transition: transform 180ms ease, border-color 180ms ease, background 180ms ease;
}

.service-homepage-r3.location-seo-r3 .service-r3-toc a:hover,
.service-homepage-r3.location-seo-r3 .service-r3-toc a:focus,
.service-homepage-r3.location-seo-r3 .service-r3-local-link:hover,
.service-homepage-r3.location-seo-r3 .service-r3-local-link:focus {
  border-color: rgb(179 149 99 / 68%);
  background: linear-gradient(135deg, rgb(53 46 39 / 96%), rgb(17 16 25 / 94%));
  transform: translateY(-2px);
}

.service-homepage-r3.location-seo-r3 .service-r3-faq-grid,
.service-homepage-r3.location-seo-r3 .service-r3-editorial-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: clamp(16px, 1.7vw, 26px);
}

.service-homepage-r3.location-seo-r3 .service-r3-faq-card,
.service-homepage-r3.location-seo-r3 .service-r3-editorial-card {
  min-width: 0;
  padding: clamp(20px, 2vw, 30px);
  border: 1px solid rgb(179 149 99 / 26%);
  background:
    linear-gradient(145deg, rgb(32 31 36 / 94%), rgb(17 16 25 / 94%)),
    #111019;
  box-shadow: 0 18px 44px rgb(0 0 0 / 18%);
}

.service-homepage-r3.location-seo-r3 .service-r3-faq-card h3,
.service-homepage-r3.location-seo-r3 .service-r3-editorial-card h3 {
  margin-top: 0;
  color: #fff;
}

.service-homepage-r3.location-seo-r3 .service-r3-local-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: clamp(18px, 2vw, 28px);
}

.service-homepage-r3.location-seo-r3 .service-r3-local-link {
  flex: 1 1 220px;
}

.service-homepage-r3.location-seo-r3 .location-finder-r3 {
  gap: clamp(18px, 2vw, 30px);
}

.service-homepage-r3.location-seo-r3 .location-finder-r3-search {
  display: none;
  max-width: min(100%, 620px);
  margin: clamp(18px, 2vw, 28px) auto 0;
}

.service-homepage-r3.location-seo-r3 .location-finder-r3.is-filter-ready .location-finder-r3-search {
  display: block;
}

.service-homepage-r3.location-seo-r3 .location-finder-r3-search input {
  width: 100%;
  min-height: 52px;
  padding: 0.9rem 1rem;
  border: 1px solid rgb(179 149 99 / 42%);
  border-radius: 0;
  background: rgb(9 8 13 / 78%);
  color: #fff;
  outline: none;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 6%);
}

.service-homepage-r3.location-seo-r3 .location-finder-r3-search input::placeholder {
  color: rgb(220 220 220 / 74%);
}

.service-homepage-r3.location-seo-r3 .location-finder-r3-search input:focus {
  border-color: rgb(179 149 99 / 82%);
  box-shadow: 0 0 0 3px rgb(179 149 99 / 18%);
}

.service-homepage-r3.location-seo-r3 .location-finder-r3-card[hidden],
.service-homepage-r3.location-seo-r3 .location-finder-r3-empty[hidden] {
  display: none !important;
}

.service-homepage-r3.location-seo-r3 .location-finder-r3-card h3 a {
  color: inherit;
  text-decoration: none;
}

.service-homepage-r3.location-seo-r3 .location-finder-r3-empty {
  max-width: 720px;
  margin: clamp(18px, 2vw, 28px) auto 0;
  color: var(--remodeling-text-muted, #dcdcdc);
  text-align: center;
}

.service-homepage-r3.location-seo-r3 .location-links-r3 {
  width: var(--service-r3-container);
  max-width: var(--service-r3-container);
  margin-right: auto;
  margin-left: auto;
}

.service-homepage-r3.location-seo-r3 .location-links-r3-panel {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(260px, 1fr);
  gap: clamp(18px, 2.4vw, 34px);
  align-items: center;
  padding: clamp(22px, 2.8vw, 38px);
  border: 1px solid rgb(179 149 99 / 28%);
  background:
    linear-gradient(135deg, rgb(32 31 36 / 96%), rgb(17 16 25 / 96%)),
    #111019;
  box-shadow: 0 18px 44px rgb(0 0 0 / 18%);
}

.service-homepage-r3.location-seo-r3 .location-links-r3-copy p {
  max-width: 620px;
  margin-bottom: 0;
  color: var(--remodeling-text-muted, #dcdcdc);
}

.service-homepage-r3.location-seo-r3 .location-links-r3-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
}

.service-homepage-r3.location-seo-r3 .location-links-r3-list .service-r3-local-link {
  flex: 0 1 auto;
  min-width: min(100%, 220px);
}

.service-homepage-r3.location-seo-r3 .service-r3-note {
  max-width: 760px;
  margin-top: clamp(16px, 2vw, 24px);
  color: var(--remodeling-text-muted, #dcdcdc);
  font-size: 0.96rem;
}

.service-homepage-r3.location-seo-r3.article-r3 .service-r3-split {
  align-items: start;
}

.service-homepage-r3.location-seo-r3.article-r3 .service-r3-text-panel {
  padding-top: clamp(30px, 4vw, 58px);
  padding-bottom: clamp(30px, 4vw, 58px);
}

@media only screen and (max-width: 768px) {
  .service-homepage-r3.location-seo-r3 .service-r3-toc {
    grid-template-columns: 1fr;
  }

  .service-homepage-r3.location-seo-r3 .service-r3-local-link {
    flex-basis: 100%;
  }

  .service-homepage-r3.location-seo-r3 .location-links-r3-panel {
    grid-template-columns: 1fr;
  }

  .service-homepage-r3.location-seo-r3 .location-links-r3-list {
    justify-content: stretch;
  }

  .service-homepage-r3.location-seo-r3 .location-links-r3-list .service-r3-local-link {
    width: 100%;
  }
}
