/* Service pages: dark navy refinement, September 2026. Presentation only. */
.service-page {
  --service-navy: #062c53;
  --service-radius: 0.375rem;
  --primary: var(--service-navy);
  --primary-hover: #041d37;
  --primary-deep: var(--service-navy);
  --primary-dark: var(--service-navy);
  --primary-soft: #f5f6f7;
  --accent: var(--service-navy);
  --text: #334155;
  --text-muted: #56616d;
  --border: #dce2e7;
  --border-strong: #c6d0d8;
  --whatsapp: #13833f;
  --whatsapp-cta: #25d366;
  --whatsapp-cta-hover: #1fba59;
  --whatsapp-cta-ink: #062c53;
  --service-space-2xs: 0.25rem;
  --service-space-xs: 0.5rem;
  --service-space-sm: 0.75rem;
  --service-space-md: 1rem;
  --service-space-lg: 1.5rem;
  --service-space-xl: 2rem;
  --service-space-2xl: 3rem;
  --service-space-3xl: 4rem;
  --service-section-space: clamp(3rem, 5vw, 4.5rem);
  --service-block-space: clamp(3rem, 5vw, 4.5rem);
  --service-layout-gap: clamp(2rem, 4vw, 4rem);
  --service-card-padding: clamp(1.25rem, 2vw, 1.5rem);
  --section-space: var(--service-section-space);
  --service-type-display: clamp(2.35rem, 4.8vw, 4.15rem);
  --service-type-section: clamp(1.85rem, 3.6vw, 2.75rem);
  --service-type-panel: clamp(1.4rem, 2.3vw, 1.85rem);
  --service-type-card: 1.1875rem;
  --service-type-body-lg: clamp(1.125rem, 1.6vw, 1.25rem);
  --service-type-body: 1.125rem;
  --service-type-small: 1rem;
  --service-type-label: 0.8125rem;
  --service-type-legal: 0.75rem;
  --service-leading-display: 1.02;
  --service-leading-heading: 1.12;
  --service-leading-body: 1.65;
  --service-leading-small: 1.55;
  --service-weight-regular: 400;
  --service-weight-semibold: 600;
  --service-weight-bold: 700;
  --service-weight-extra: 800;
  --service-tracking-display: -0.035em;
  --service-tracking-label: 0.055em;
  line-height: 1.6;
}
.service-page h2 { font-size: clamp(1.65rem, 2.7vw, 2.25rem); line-height: 1.15; letter-spacing: -0.035em; }
.service-page h3 { font-size: 1.15rem; line-height: 1.3; }
.service-page p { margin-bottom: 1rem; }
.service-page .lead { font-size: 1rem; line-height: 1.65; }
.service-page .eyebrow { margin-bottom: 0.6rem; font-size: 0.75rem; letter-spacing: 0.065em; color: var(--primary); }
.service-page .eyebrow::before { display: none; }
.service-page .section { padding-block: var(--section-space); }
.service-page .section-heading { margin-bottom: 1.65rem; max-width: 50rem; }
.service-page .section-heading h2 { margin-bottom: 0.65rem; }
.service-page .section-heading p { font-size: 1rem; margin-bottom: 0; }
.service-page .btn { gap: 0.6rem; min-height: 3.15rem; padding: 0.8rem 1.2rem; border-radius: var(--service-radius); line-height: 1.4; text-align: center; }
.service-page a:focus-visible,
.service-page button:focus-visible,
.service-page input:focus-visible,
.service-page select:focus-visible,
.service-page textarea:focus-visible { outline: 3px solid var(--focus-color, var(--service-navy)); outline-offset: 4px; }
.service-page .btn--whatsapp,
.service-page .service-hero .btn--lime,
.service-page .desktop-nav > .btn--primary { background: var(--whatsapp); border-color: var(--whatsapp); color: #fff; }
.service-page .btn--whatsapp:hover,
.service-page .service-hero .btn--lime:hover,
.service-page .desktop-nav > .btn--primary:hover { background: #106b34; border-color: #106b34; }

/* Conversion actions use the familiar WhatsApp green. Navigation buttons keep their original hierarchy. */
.service-page a.btn[href="#orcamento"],
.service-page a.btn[href^="https://wa.me/"],
.service-page .btn--whatsapp,
.service-page .desktop-nav > .btn--primary {
  border-color: var(--whatsapp-cta);
  color: var(--whatsapp-cta-ink);
  background: var(--whatsapp-cta);
  box-shadow: 0 0.65rem 1.35rem rgb(37 211 102 / 18%);
}
.service-page a.btn[href="#orcamento"]:hover,
.service-page a.btn[href^="https://wa.me/"]:hover,
.service-page .btn--whatsapp:hover,
.service-page .desktop-nav > .btn--primary:hover {
  border-color: var(--whatsapp-cta-hover);
  color: var(--whatsapp-cta-ink);
  background: var(--whatsapp-cta-hover);
}
.service-page .topbar { color: #56616d; background: #f5f6f7; border-bottom: 1px solid #e5e9ec; }
.service-page .topbar__inner { min-height: 2rem; }
.service-page .site-header { border-bottom-color: #e5e9ec; background: rgb(255 255 255 / 97%); }
.service-page .header__inner { min-height: 4.7rem; }
.service-page .brand-placeholder__name { color: var(--service-navy); font-size: 1.25rem; }
.service-page .desktop-nav { gap: 1.4rem; }

/* Editorial hero: a quiet reading area and an unobscured, intentionally framed photo. */
.service-page .service-hero { padding: 1rem 0 0; border: 0; color: var(--text); background: var(--service-navy); isolation: isolate; }
.service-page .service-hero > .container { position: static; width: min(100% - 2.5rem, var(--container)); }
.service-page .service-hero .breadcrumb { margin-bottom: 1.75rem; font-size: 0.8rem; }
.service-page .service-hero .breadcrumb,
.service-page .service-hero .breadcrumb a { color: #56616d; }
.service-page .service-hero .breadcrumb [aria-current] { color: var(--primary-deep); }
.service-page .service-hero__grid { position: static; display: block; }
.service-page .service-hero__copy { position: relative; z-index: 2; max-width: 40rem; padding-bottom: 2rem; }
.service-page .service-hero h1 { max-width: 22ch; margin-bottom: 1.25rem; color: var(--service-navy); font-size: clamp(2rem, 3.4vw, 3rem); line-height: 1.1; letter-spacing: -0.035em; text-wrap: balance; overflow-wrap: normal; }
.service-page .service-hero .lead { color: #334155; max-width: 54ch; margin-bottom: 1.5rem; font-size: 1rem; line-height: 1.7; font-weight: 400; }
.service-page .service-hero .button-row { margin-top: 0; gap: 0.7rem; align-items: flex-start; flex-direction: column; }
.service-page .service-hero__link {
  min-height: 3rem;
  padding: 0.68rem 1rem;
  border: 1px solid #9eafbb;
  border-radius: 0.55rem;
  color: var(--service-navy);
  background: #fff;
  box-shadow: 0 0.35rem 0.9rem rgb(6 44 83 / 6%);
  font-size: 0.9rem;
  text-decoration: none;
}
.service-page .service-hero__link:hover,
.service-page .service-hero__link:focus-visible {
  border-color: var(--service-navy);
  color: #fff;
  background: var(--service-navy);
  text-decoration: none;
}
.service-page .service-hero__trust { gap: 0; margin-top: 1.25rem; padding-bottom: 0; }
.service-page .service-hero__trust span { min-height: 0; padding: 0.25rem 0.85rem; border: 0; border-radius: 0; color: #56616d; font-size: 0.8rem; }
.service-page .service-hero__trust span:first-child { padding-left: 0; }
.service-page .service-hero__trust span + span { border-left: 1px solid #c6d0d8; }
.service-page .service-hero__visual { position: relative; z-index: 0; inset: auto; display: grid; grid-template-rows: minmax(0, 1fr) auto; width: calc(100% + 2.5rem); height: auto; max-width: none; margin: 0 -1.25rem; pointer-events: none; }
.service-page .service-hero .service-hero__visual img { position: static; width: 100%; height: auto; min-height: 0; aspect-ratio: 16 / 9; border: 0; border-radius: 0; box-shadow: none; filter: none; object-fit: cover; object-position: var(--hero-position, 50% 50%); }
.service-page .service-hero__visual::after { content: none; }
.service-page .service-hero__visual > span { position: static; width: auto; max-width: none; padding: 0.65rem max(1.25rem, calc((100vw - var(--container)) / 2)); border: 0; border-radius: 0; color: #c1d0dc; background: var(--service-navy); box-shadow: none; font-size: 0.75rem; font-weight: 400; letter-spacing: 0.025em; }
.service-page .service-hero:has(img[src$="limpeza-sofa-campo-grande-hero.webp"]) { --hero-position: 26% center; }
.service-page .service-hero:has(img[src$="limpeza-colchao-campo-grande-hero.webp"]) { --hero-position: 66% center; }
.service-page .service-hero:has(img[src$="limpeza-poltrona-campo-grande-hero.webp"]) { --hero-position: 56% center; }
.service-page .service-hero:has(img[src$="limpeza-cadeiras-campo-grande-hero.webp"]) { --hero-position: 35% center; }
.service-page .service-hero:has(img[src$="limpeza-tapetes-campo-grande-hero.webp"]) { --hero-position: 66% center; }
.service-page .service-hero:has(img[src$="limpeza-cortinas-campo-grande-hero.webp"]) { --hero-position: 64% center; }
.service-page .service-hero:has(img[src$="limpeza-persianas-campo-grande-hero.webp"]) { --hero-position: 63% center; }

/* Existing piece links remain visible as a compact photographic catalogue. */
.service-page .piece-selector { padding-block: 2rem; border-bottom: 0; }
.service-page .piece-selector header { margin-bottom: 1.25rem; }
.service-page .piece-selector header h2 { max-width: none; font-size: clamp(1.5rem, 2.2vw, 1.85rem); }
.service-page .piece-selector__grid { gap: 0.65rem; }
.service-page .piece-selector__grid > a { padding: 0.4rem 0.4rem 0.8rem; border-color: #e5e9ec; border-radius: var(--service-radius); color: var(--service-navy); background: #f4f6f7; }
.service-page .piece-selector__grid > a:hover { border-color: #95a5b4; }
.service-page .piece-selector__grid strong { font-size: 0.875rem; }

/* Sofa hub: visual model recognition keeps the sales journey concrete and easy to scan. */
.service-page .sofa-models { background: #f5f6f7; }
.service-page .sofa-models__head { max-width: 52rem; margin-bottom: 1.75rem; }
.service-page .sofa-models__head h2 { max-width: 22ch; margin-bottom: 0.75rem; }
.service-page .sofa-models__head p { max-width: 48rem; margin: 0; color: var(--text-muted); font-size: 1.05rem; }
.service-page .sofa-models__grid { display: grid; gap: 1rem; }
.service-page .sofa-models__grid article {
  display: grid;
  min-width: 0;
  overflow: hidden;
  grid-template-rows: auto 1fr;
  border: 1px solid #dce2e7;
  border-radius: 0.7rem;
  background: #fff;
  box-shadow: 0 0.7rem 1.8rem rgb(6 44 83 / 5%);
}
.service-page .sofa-models__grid img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; background: #edf1f3; }
.service-page .sofa-models__grid article > div { padding: 1.15rem 1.2rem 1.3rem; }
.service-page .sofa-models__grid h3 { margin-bottom: 0.45rem; color: var(--service-navy); font-size: 1.08rem; }
.service-page .sofa-models__grid p { margin: 0; color: var(--text-muted); font-size: 0.92rem; line-height: 1.55; }
.service-page .sofa-models__cta {
  display: grid;
  gap: 1rem;
  margin-top: 1.25rem;
  padding: 1.25rem;
  align-items: center;
  border-radius: 0.7rem;
  color: #fff;
  background: var(--service-navy);
}
.service-page .sofa-models__cta > div { display: grid; gap: 0.25rem; }
.service-page .sofa-models__cta strong { color: #fff; font-size: 1.05rem; }
.service-page .sofa-models__cta span { color: #d7e2ea; font-size: 0.92rem; }
.service-page .sofa-models__cta .btn { width: 100%; }

@media (min-width: 48rem) {
  .service-page .sofa-models__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-page .sofa-models__cta { grid-template-columns: minmax(0, 1fr) auto; padding: 1.35rem 1.5rem; }
  .service-page .sofa-models__cta .btn { width: auto; }
}

@media (min-width: 70rem) {
  .service-page .sofa-models__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Sofa hub and local pages: everyday particles, pets and responsible health expectations. */
.service-page .sofa-home-comfort { overflow: hidden; background: #edf4f5; }
.service-page .sofa-home-comfort__grid { display: grid; gap: 2rem; align-items: center; }
.service-page .sofa-home-comfort__copy { min-width: 0; }
.service-page .sofa-home-comfort__copy > h2 { max-width: 23ch; margin: 0.55rem 0 1rem; color: var(--service-navy); }
.service-page .sofa-home-comfort__copy > .lead { max-width: 47rem; margin-bottom: 1.5rem; color: #3d5064; }
.service-page .sofa-home-comfort__points { display: grid; border-top: 1px solid #cbdade; }
.service-page .sofa-home-comfort__points article {
  display: grid;
  min-width: 0;
  gap: 0.85rem;
  padding: 1rem 0;
  grid-template-columns: 2.7rem minmax(0, 1fr);
  border-bottom: 1px solid #cbdade;
}
.service-page .sofa-home-comfort__points article > span {
  display: grid;
  width: 2.7rem;
  height: 2.7rem;
  place-items: center;
  border-radius: 0.55rem;
  color: #fff;
  background: var(--service-navy);
}
.service-page .sofa-home-comfort__points svg { width: 1.25rem; height: 1.25rem; }
.service-page .sofa-home-comfort__points h3 { margin: 0 0 0.3rem; color: var(--service-navy); font-size: 1rem; }
.service-page .sofa-home-comfort__points p { margin: 0; color: #4b5d6e; font-size: 0.9rem; line-height: 1.55; }
.service-page .sofa-home-comfort__assurance { margin-top: 1.25rem; padding: 1rem 1.1rem; border-left: 0.25rem solid var(--service-green); background: #fff; }
.service-page .sofa-home-comfort__assurance strong { display: block; margin-bottom: 0.35rem; color: var(--service-navy); }
.service-page .sofa-home-comfort__assurance p { margin: 0; color: #4b5d6e; font-size: 0.9rem; line-height: 1.55; }
.service-page .sofa-home-comfort__actions { display: grid; gap: 0.85rem; margin-top: 1.25rem; align-items: center; }
.service-page .sofa-home-comfort__actions .btn { width: 100%; }
.service-page .sofa-home-comfort__actions .text-link { justify-self: start; font-size: 0.9rem; }
.service-page .sofa-home-comfort__visual { position: relative; overflow: hidden; margin: 0; border-radius: 0.75rem; background: #dbe5e8; box-shadow: 0 1.2rem 2.5rem rgb(6 44 83 / 10%); }
.service-page .sofa-home-comfort__visual img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.service-page .sofa-home-comfort__visual figcaption { position: absolute; right: 0; bottom: 0; left: 0; display: grid; gap: 0.25rem; padding: 1rem 1.15rem; color: #dce8ef; background: linear-gradient(180deg, rgb(3 28 53 / 8%), rgb(3 28 53 / 94%)); }
.service-page .sofa-home-comfort__visual figcaption strong { color: #fff; }
.service-page .sofa-home-comfort__visual figcaption span { font-size: 0.86rem; line-height: 1.45; }

@media (min-width: 48rem) {
  .service-page .sofa-home-comfort__points { gap: 0 1.25rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-page .sofa-home-comfort__actions { grid-template-columns: auto minmax(0, 1fr); }
  .service-page .sofa-home-comfort__actions .btn { width: auto; }
}

@media (min-width: 64rem) {
  .service-page .sofa-home-comfort__grid { gap: clamp(2.5rem, 5vw, 5rem); grid-template-columns: minmax(0, 1.08fr) minmax(22rem, 0.92fr); }
  .service-page .sofa-home-comfort__visual img { min-height: 39rem; aspect-ratio: 4 / 5; }
}

.service-page .service-summary { border-block: 1px solid #e5e9ec; background: #f5f6f7; }
.service-page .service-summary__grid > a { min-height: 0; padding: 1rem; align-items: center; grid-template-columns: 2.6rem minmax(0, 1fr); }
.service-page .service-summary__grid > a:first-child { padding-left: 0; }
.service-page .service-summary__grid span { font-size: 1.8rem; }
.service-page .service-summary__grid strong { font-size: 0.95rem; }
.service-page .service-summary__grid p { font-size: 0.8rem; font-weight: 400; }

/* Text and photography with an inset blue caption. */
.service-page .service-intro__grid { gap: 2.25rem; align-items: stretch; }
.service-page .service-intro { overflow: hidden; }
.service-page .service-intro__copy .section-heading { margin-bottom: 0.85rem; }
.service-page .service-intro__copy h2 { max-width: 24ch; }
.service-page .editorial-list { margin-block: 1.1rem; }
.service-page .editorial-list li { padding-block: 0.6rem; line-height: 1.55; }
.service-page .service-intro__copy .text-link { gap: 0.65rem; padding: 0.65rem 1rem; border: 1px solid #c6d0d8; border-radius: var(--service-radius); color: var(--primary-deep); font-size: 0.9rem; text-decoration: none; }
.service-page .service-intro__copy .text-link:hover { border-color: var(--primary); background: var(--primary-soft); }
.service-page .media-frame { height: 100%; overflow: hidden; border-radius: var(--service-radius); }
.service-page .service-intro__visual .media-frame img { width: 100%; height: 100%; min-height: 19rem; max-height: 38rem; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--service-radius); filter: none; }
.service-page .service-intro__note { position: relative; right: auto; bottom: auto; width: calc(100% - 2rem); max-width: 23rem; margin: -5rem 0 0 auto; padding: 1.15rem 1.35rem; border-radius: 0.65rem 0 0.65rem 0.65rem; color: #e7edf2; background: var(--service-navy); box-shadow: none; }
.service-page .service-intro__note strong { font-size: 1rem; }
.service-page .service-intro__note span { font-size: 0.875rem; line-height: 1.5; }

/* Quiet blue information band, open columns and clear ordinal headings. */
.service-page .service-bento-stage { background: #f5f6f7; }
.service-page .home-section-head { margin-bottom: 0; }
.service-page .service-info-bento { gap: 1.5rem; grid-auto-rows: auto; }
.service-page .service-info-bento__panel { height: auto; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.service-page .service-info-bento__index { margin-bottom: 0.5rem; font-size: 2.15rem; line-height: 1; letter-spacing: -0.04em; }
.service-page .service-info-bento__panel h3 { font-size: 1.2rem; }
.service-page .service-info-bento__panel .editorial-list { margin-top: 0; }
.service-page .service-info-bento__panel .editorial-list li { border-color: #dce2e7; }
.service-page .service-info-bento__tip { height: auto; min-height: 0; align-content: center; padding: 1.65rem; border: 1px solid #dce2e7; border-radius: var(--service-radius); color: #56616d; background: #eef1f3; box-shadow: none; }
.service-page .service-info-bento__tip strong { margin-top: 0.5rem; color: var(--service-navy); font-size: clamp(1.4rem, 2.1vw, 1.85rem); }
.service-page .service-info-bento__tip small { color: #56616d; font-size: 1rem; }

/* Split banner: solid navy message, edge-to-edge photograph. */
.service-page .lead-banner { padding-block: 1.5rem; background: #fff; }
.service-page .lead-banner .container { width: min(100% - 2rem, var(--container)); }
.service-page .lead-banner__inner { gap: 0; border: 0; border-radius: var(--service-radius); background: var(--service-navy); }
.service-page .lead-banner__copy { padding: clamp(1.6rem, 3vw, 2.6rem); }
.service-page .lead-banner .eyebrow { color: #c1d0dc; }
.service-page .lead-banner h2 { max-width: 26ch; color: #fff; font-size: clamp(1.65rem, 2.6vw, 2.15rem); }
.service-page .lead-banner p { color: #e7edf2; }
.service-page .lead-banner__steps { margin-block: 1.25rem; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0.8rem; }
.service-page .lead-banner__steps li { padding-block: 0.6rem; grid-template-columns: 1fr; gap: 0.35rem; align-content: start; border-top: 1px solid #365773; border-bottom: 0; font-size: 0.875rem; }
.service-page .lead-banner__steps span { color: #c1d0dc; font-size: 1.1rem; }
.service-page .lead-banner__visual { min-height: 17rem; }
.service-page .lead-banner__visual img { position: absolute; inset: 0; width: 100%; height: 100%; filter: none; }
.service-page .lead-banner__visual > span { right: 1rem; left: 1rem; bottom: 1rem; padding: 0.85rem 1rem; border: 0; border-radius: var(--service-radius); color: var(--service-navy); background: rgb(255 255 255 / 96%); line-height: 1.4; }
.service-page .lead-banner .btn--inverse { color: var(--service-navy); box-shadow: none; }

/* The same steps, now presented as a connected journey. */
.service-page .service-journey__track { gap: 1.5rem; margin-bottom: 0; }
.service-page .service-journey__track li { min-height: 0; height: auto; padding: 0 0 0 4.3rem; border: 0; border-radius: 0; }
.service-page .service-journey__track li > span { top: 0; left: 0; display: grid; width: 3.25rem; height: 3.25rem; place-items: center; border: 1px solid #c6d0d8; border-radius: 50%; color: var(--service-navy); background: #eef1f3; font-size: 1.4rem; letter-spacing: -0.035em; }
.service-page .service-journey__track h3 { padding-top: 0.1rem; font-size: 1rem; }
.service-page .service-journey__track p { font-size: 1rem; line-height: 1.55; }

/* Inset technical block. The paragraph, checklist and notice stay intact. */
.service-page .model-showcase { padding-block: 1.5rem; border: 0; background: #f5f6f7; }
.service-page .model-showcase__grid { gap: 0; align-items: stretch; overflow: hidden; border-radius: var(--service-radius); background: var(--service-navy); }
.service-page .model-showcase__visual { min-height: 15rem; order: 0; }
.service-page .model-showcase__visual .media-frame { border-radius: 0; }
.service-page .model-showcase .model-showcase__visual .media-frame img { width: 100%; height: 100%; min-height: 0; aspect-ratio: auto; object-fit: cover; border: 0; border-radius: 0; filter: none; }
.service-page .model-showcase__copy { padding: clamp(1.5rem, 3vw, 2.5rem); }
.service-page .model-showcase__copy h2 { font-size: clamp(1.55rem, 2.3vw, 1.95rem); }
.service-page .model-showcase__copy h3 { margin-top: 1.25rem; font-size: 1rem; }
.service-page .model-showcase__copy .eyebrow { color: #c1d0dc; }
.service-page .model-showcase__copy > p { color: #e7edf2; }
.service-page .model-showcase__copy .editorial-list { margin-block: 0.6rem; color: #e7edf2; }
.service-page .model-showcase__copy .editorial-list li { border-color: #365773; }
.service-page .model-showcase__notice { margin-top: 1rem; padding: 0.75rem 1rem; border-left-color: #95a5b4; border-radius: 0.2rem; color: #e7edf2; font-size: 0.9rem; }

.service-page .factor-list { gap: 1rem; margin-bottom: 0; }
.service-page .factor-list li { min-height: 0; padding: 1.15rem; border: 1px solid #dce2e7; border-radius: var(--service-radius); background: #f8f9fa; grid-template-columns: 2.35rem minmax(0, 1fr); gap: 0.75rem; font-size: 1rem; }
.service-page .factor-list span { color: var(--service-navy); font-size: 1.7rem; }
.service-page .insight-stage { background: #f5f6f7; }
.service-page .insight-stage__grid { gap: 2rem; align-items: start; }
.service-page .insight-stage__visual { order: 0; }
.service-page .insight-stage__visual .media-frame img { min-height: 0; aspect-ratio: 4 / 3; width: 100%; object-fit: cover; border-radius: var(--service-radius); filter: none; }
.service-page .table-wrap { margin-top: 1.2rem; border-color: #dce2e7; border-radius: var(--service-radius); box-shadow: none; }
.service-page .table-wrap table { min-width: 0; }
.service-page .table-wrap th,
.service-page .table-wrap td { padding: 0.9rem; font-size: 0.9375rem; }
.service-page .table-wrap thead th { text-transform: none; letter-spacing: 0; font-size: 0.9375rem; background: var(--service-navy); }
.service-page .table-wrap tbody th { background: #eef1f3; width: 24%; }
.service-page .table-wrap tbody tr:nth-child(even) td { background: #f8f9fa; }

.service-page .trust-stage__grid { gap: 1.5rem; }
.service-page .trust-stage article { padding: 1.75rem; border: 1px solid #dce2e7; border-radius: var(--service-radius); }
.service-page .trust-stage article:first-child { color: var(--text-muted); background: #fff; }
.service-page .trust-stage article:first-child h2 { color: var(--primary-deep); }
.service-page .trust-stage article:first-child .eyebrow { color: var(--primary); }
.service-page .trust-stage article:last-child { background: #f5f6f7; }
.service-page .trust-stage h2 { font-size: clamp(1.5rem, 2.3vw, 1.9rem); }
.service-page .trust-stage .editorial-list { margin-bottom: 0; }

.service-page .service-form-stage { background: #f5f6f7; }
.service-page .service-form-stage__grid { gap: 2.5rem; }
.service-page .service-form-stage__grid > div > h2 { max-width: 19ch; }
.service-page .service-form-stage__fact { border-color: #dce2e7; border-radius: var(--service-radius); background: #fff; }
.service-page .service-form-stage__fact svg { flex-shrink: 0; }
.service-page .service-form-stage__areas {
  display: grid;
  gap: 0.9rem;
  margin-top: 1.5rem;
  padding: 1rem;
  border: 1px solid rgb(255 255 255 / 20%);
  border-radius: 0.75rem;
  background: rgb(255 255 255 / 8%);
}
.service-page .service-form-stage__areas-head {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  gap: 0.75rem;
  align-items: center;
}
.service-page .service-form-stage__areas-head > svg { width: 1.35rem; height: 1.35rem; margin-inline: auto; color: #fff; }
.service-page .service-form-stage__areas-head > span { display: grid; gap: 0.1rem; }
.service-page .service-form-stage__areas-head strong { color: #fff; line-height: 1.35; }
.service-page .service-form-stage__areas-head small { color: #cbdbe6; font-size: 0.82rem; line-height: 1.45; }
.service-page .service-form-stage__area-links { display: flex; gap: 0.45rem; flex-wrap: wrap; }
.service-page .service-form-stage__area-links a {
  padding: 0.4rem 0.65rem;
  border: 1px solid rgb(255 255 255 / 22%);
  border-radius: 999px;
  color: #fff;
  background: rgb(255 255 255 / 7%);
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.3;
  text-decoration: none;
}
.service-page .service-form-stage__area-links a:hover,
.service-page .service-form-stage__area-links a:focus-visible { border-color: var(--whatsapp-cta); background: #13833f; }
.service-page .form-card { padding: clamp(1.25rem, 3vw, 2.25rem); border-radius: var(--service-radius); border-color: #dce2e7; box-shadow: none; }
.service-page .form-card h2 { font-size: clamp(1.45rem, 2.5vw, 1.9rem); }
.service-page .form-grid { gap: 1rem; }
.service-page .form-card button[type='submit'] { margin-top: 1.25rem; }
.service-page .field input:not([type='checkbox']),
.service-page .field select,
.service-page .field textarea { min-height: 3rem; border-color: #c6d0d8; border-radius: 0.4rem; font-size: 1rem; background: #fff; }
.service-page .evidence-strip { border-color: #dce2e7; }
.service-page .evidence-strip__grid > div { padding: 1rem; gap: 1rem; }
.service-page .evidence-strip .evidence-strip__mark { border-radius: 0.62rem; color: var(--service-navy); border-color: #dce2e7; background: #eef1f3; }
.service-page .service-faq__grid { gap: 2.5rem; }
.service-page .service-faq__grid > div:first-child { position: static; }
.service-page .service-faq .faq-list details { border: 1px solid #dce2e7; border-radius: var(--service-radius); }
.service-page .service-faq .faq-list details[open] { border-color: #95a5b4; box-shadow: none; }
.service-page .faq-list summary { font-size: 1rem; }
.service-page .faq-list__answer p { margin: 0; padding: 0.85rem 0 0; line-height: 1.65; }
.service-page .faq-list__index { color: var(--service-navy); }
.service-page .faq-list__toggle { border: 0; border-radius: 50%; background: #f5f6f7; }
.service-page .faq-assurance { padding: 1.25rem; border: 1px solid #dce2e7; border-radius: var(--service-radius); background: #f5f6f7; }
.service-page .related-stage { background: #f5f6f7; }
.service-page .related-links a { border-color: #dce2e7; border-radius: var(--service-radius); font-size: 0.95rem; }
.service-page .cta-band { padding-block: 2.75rem; background: var(--service-navy); }
.service-page .cta-band .eyebrow { color: #c1d0dc; }
.service-page .cta-band h2 { max-width: 27ch; }
.service-page .cta-band p { margin-bottom: 0; }
.service-page .cta-band .btn--lime { color: var(--service-navy); background: #fff; border-color: #fff; }
.service-page .cta-band .btn--lime:hover { background: #eef1f3; border-color: #eef1f3; }
.service-page .site-footer { background: #062c53; }

/* Restrained editorial details: clear alignment, no floating badges or ornamental motion. */
.service-page .site-header { background: #fff; backdrop-filter: none; box-shadow: none; }
.service-page .service-hero,
.service-page .service-bento-stage,
.service-page .model-showcase,
.service-page .cta-band,
.service-page .site-footer { background-image: none; }
.service-page .btn:hover,
.service-page .piece-selector__grid > a:hover,
.service-page .piece-selector__grid > a:hover img { transform: none; box-shadow: none; }
.service-page .service-intro__note { width: 100%; max-width: none; margin: 0; border-radius: 0; box-shadow: none; }
.service-page .service-info-bento__tip { background: #fff; }
.service-page .lead-banner__visual > span { right: 0; bottom: 0; left: 0; border-radius: 0; color: var(--service-navy); background: #fff; }
.service-page .service-journey__track li > span { display: block; width: auto; height: auto; padding: 0; border: 0; border-radius: 0; background: transparent; font-size: 2.25rem; line-height: 1.1; }
.service-page .service-journey__track li:not(:last-child)::after { display: none; }
.service-page .faq-list__toggle { border-radius: 0; background: transparent; }
.service-page .form-card,
.service-page .table-wrap,
.service-page .service-faq .faq-list details[open] { box-shadow: none; }
.service-page .site-footer h2 { font-size: 1.15rem; line-height: 1.35; letter-spacing: -0.015em; }

/* Client-selected navy replaces the gray surfaces; light cards keep their own text tokens. */
.service-page :is(.topbar, .service-hero, .service-summary, .service-bento-stage, .model-showcase, .insight-stage, .service-form-stage, .related-stage, .faq-assurance),
.service-page .trust-stage article:last-child,
.service-page .factor-list li {
  --primary: #fff;
  --primary-hover: #fff;
  --primary-deep: #fff;
  --primary-dark: #fff;
  --accent: #fff;
  --text: #e7edf2;
  --text-muted: #c1d0dc;
  --border: #365773;
  --border-strong: #526f8b;
  --focus-color: #fff;
  color: var(--text);
  background: var(--service-navy);
  border-color: var(--border);
}
.service-page :is(.form-card, .service-info-bento__tip, .table-wrap, .service-form-stage__fact, .related-links a) {
  --primary: var(--service-navy);
  --primary-hover: #041d37;
  --primary-deep: var(--service-navy);
  --primary-dark: var(--service-navy);
  --accent: var(--service-navy);
  --text: #334155;
  --text-muted: #56616d;
  --border: #dce2e7;
  --border-strong: #c6d0d8;
  --focus-color: var(--service-navy);
  color: var(--text);
}
.service-page .service-hero h1,
.service-page .service-hero .eyebrow,
.service-page .service-hero__link,
.service-page .service-hero__link:hover,
.service-page .factor-list span { color: #fff; }
.service-page .service-hero .service-hero__link {
  border-color: rgb(255 255 255 / 70%);
  color: #fff;
  background: transparent;
  box-shadow: none;
}
.service-page .service-hero .service-hero__link:hover,
.service-page .service-hero .service-hero__link:focus-visible {
  border-color: #fff;
  color: var(--service-navy);
  background: #fff;
}
.service-page .service-hero .lead { color: #e7edf2; }
.service-page .service-hero .breadcrumb,
.service-page .service-hero .breadcrumb a,
.service-page .service-hero__trust span { color: #c1d0dc; }
.service-page .service-hero__trust span + span,
.service-page .service-bento-stage .service-info-bento__panel,
.service-page .service-bento-stage .editorial-list li,
.service-page .trust-stage article:last-child .editorial-list li { border-color: #365773; }
.service-page .table-wrap tbody th { color: #fff; background: var(--service-navy); }
.service-page .table-wrap tbody tr:nth-child(even) td { background: #fff; }
.service-page .evidence-strip .evidence-strip__mark { color: #fff; background: var(--service-navy); }
.service-page .service-summary__grid > a:hover { background: #103b64; }
.service-page :is(.lead-banner__inner, .cta-band, .site-footer, .related-links a) { --focus-color: #fff; }
.service-page .related-links a:hover,
.service-page .service-intro__copy .text-link:hover,
.service-page .cta-band .btn--lime:hover { background: #fff; border-color: #95a5b4; }

@media (min-width: 48rem) {
  .service-page .service-intro__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .service-page .service-intro__note { position: absolute; right: 0; bottom: 0; margin: 0; }
  .service-page .service-info-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 2rem; }
  .service-page .service-info-bento__panel + .service-info-bento__panel { padding-left: 1.75rem; border-left: 1px solid #dce2e7; }
  .service-page .service-info-bento__tip { grid-column: 1 / -1; }
  .service-page .lead-banner__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .service-page .service-journey__track { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-page .model-showcase__grid { grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.3fr); }
  .service-page .insight-stage__grid { grid-template-columns: minmax(0, 1.3fr) minmax(0, 0.85fr); }
  .service-page .insight-stage__visual { position: sticky; top: 6rem; }
  .service-page .service-form-stage__grid { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); }
  .service-page .service-faq__grid { grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr); }
}

@media (min-width: 64rem) {
  .service-page .service-hero { padding-block: 1.25rem 2.75rem; min-height: 35rem; }
  .service-page .service-hero .breadcrumb { width: calc(50% - 2.5rem); margin-bottom: 2.75rem; }
  .service-page .service-hero__copy { width: calc(50% - 2.5rem); max-width: 35rem; padding: 0; }
  .service-page .service-hero__visual { position: absolute; inset: 0 0 0 50%; width: 50%; height: 100%; margin: 0; }
  .service-page .service-hero .service-hero__visual img { height: 100%; aspect-ratio: auto; }
  .service-page .service-hero__visual > span { padding: 0.65rem 1.5rem; }
  .service-page .service-info-bento { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 0.72fr); gap: 2rem; }
  .service-page .service-info-bento__tip { grid-column: auto; }
  .service-page .service-journey__track { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2rem; }
  .service-page .service-journey__track--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .service-page .service-journey__track li { padding: 4.2rem 0 0; }
  .service-page .service-journey__track li:not(:last-child)::after { position: absolute; top: 1.2rem; right: 0.2rem; width: 0.7rem; height: 0.7rem; border-top: 1px solid #95a5b4; border-right: 1px solid #95a5b4; transform: rotate(45deg); content: ''; }
  .service-page .factor-list--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .service-page .factor-list--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .service-page .factor-list--5 li { grid-column: auto; }
  .service-page .factor-list li { grid-template-columns: 1fr; gap: 0.65rem; align-content: start; }
  .service-page .model-showcase__grid { grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr); }
  .service-page .model-showcase__copy .editorial-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 1.5rem; }
}

@media (max-width: 47.99rem) {
  .service-page .service-hero .eyebrow {
    width: fit-content;
    max-width: 100%;
    white-space: normal;
    line-height: 1.45;
    overflow-wrap: anywhere;
  }
  .service-page .service-hero .eyebrow::before { flex: 0 0 1.25rem; }
  .service-page .service-hero .btn { width: 100%; }
  .service-page .service-hero .lead { font-size: 1rem; }
  .service-page .service-hero h1 { max-width: 21ch; }
  .service-page .service-hero__trust { margin-top: 0.6rem; padding-bottom: 0; }
  .service-page .service-summary__grid > a { padding: 0.85rem 0; }
  .service-page .service-info-bento__panel + .service-info-bento__panel { padding-top: 1.25rem; border-top: 1px solid #dce2e7; }
  .service-page .lead-banner__steps { gap: 0.5rem; }
  .service-page .lead-banner__copy .btn { width: 100%; }
  .service-page .service-intro__visual {
    display: grid;
    grid-template-rows: auto auto;
  }
  .service-page .service-intro__visual .media-frame {
    height: auto;
    border-radius: var(--service-radius) var(--service-radius) 0 0;
  }
  .service-page .service-intro__visual .media-frame img {
    height: auto;
    max-height: 25rem;
    border-radius: var(--service-radius) var(--service-radius) 0 0;
  }
  .service-page .service-intro__note {
    position: static;
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 1.15rem 1.25rem;
    border-radius: 0 0 var(--service-radius) var(--service-radius);
  }
  .service-page .trust-stage article { padding: 1.3rem; }
  .service-page .service-info-bento__panel li,
  .service-page .service-journey__track p,
  .service-page .model-showcase__copy p,
  .service-page .lead-banner p,
  .service-page .form-card p { font-size: 1rem; }
  .service-page .faq-list summary { grid-template-columns: 1.65rem minmax(0, 1fr) 1.75rem; gap: 0.6rem; }
  .service-page .faq-list__answer { grid-template-columns: 1fr; }
  .service-page .faq-list__answer p { grid-column: 1; }
}

/* Purpose-composed imagery: dedicated mobile source and uncropped desktop panorama. */
.service-page .service-hero--background { padding: 1rem 0 0; min-height: 0; }
.service-page .service-hero--background .breadcrumb { position: relative; z-index: 2; width: auto; margin-bottom: 1.75rem; }
.service-page .service-hero--background .service-hero__copy { width: 100%; max-width: 40rem; padding-bottom: 1.5rem; }
.service-page .service-hero--background .service-hero__visual { position: relative; inset: auto; display: block; width: calc(100% + 2.5rem); height: auto; margin: 0 -1.25rem; }
.service-page .service-hero--background .service-hero__visual picture { display: block; }
.service-page .service-hero--background .service-hero__visual img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; object-position: center; }
.service-page .service-hero--background .service-hero__visual > span { display: block; padding: 0.65rem 1.25rem; }
@media (min-width: 48rem) and (max-width: 74.99rem) {
  .service-page .service-hero--background > .container { max-width: 40rem; }
}
@media (min-width: 75rem) {
  .service-page .service-hero--background { --hero-copy-edge: max(45%, calc((100% - var(--container)) / 2 + 33.75rem)); --hero-fade-width: clamp(9rem, 16vw, 20rem); padding-block: 1.25rem 3.25rem; min-height: 36rem; }
  .service-page .service-hero--background .breadcrumb { width: 45%; margin-bottom: 2rem; }
  .service-page .service-hero--background .service-hero__copy { width: 45%; max-width: 33.75rem; padding-bottom: 0; }
  .service-page .service-hero--background h1 { font-size: clamp(2rem, 3.1vw, 2.85rem); }
  .service-page .service-hero--background .service-hero__visual { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
  .service-page .service-hero--background .service-hero__visual picture { position: absolute; inset: 0; }
  .service-page .service-hero--background .service-hero__visual img { height: 100%; aspect-ratio: auto; object-fit: contain; object-position: right bottom; }
  .service-page .service-hero--background .service-hero__visual::after {
    position: absolute; inset: 0; content: '';
    background: linear-gradient(90deg,
      #062c53 0%,
      #062c53 calc(var(--hero-copy-edge) - 12rem),
      rgb(6 44 83 / 98%) calc(var(--hero-copy-edge) - 6rem),
      rgb(6 44 83 / 92%) calc(var(--hero-copy-edge) - 2rem),
      rgb(6 44 83 / 82%) var(--hero-copy-edge),
      rgb(6 44 83 / 53%) calc(var(--hero-copy-edge) + var(--hero-fade-width) * 0.25),
      rgb(6 44 83 / 24%) calc(var(--hero-copy-edge) + var(--hero-fade-width) * 0.5),
      rgb(6 44 83 / 6%) calc(var(--hero-copy-edge) + var(--hero-fade-width) * 0.75),
      rgb(6 44 83 / 0%) calc(var(--hero-copy-edge) + var(--hero-fade-width)));
  }
  .service-page .service-hero--background .service-hero__visual > span { position: absolute; z-index: 1; right: auto; bottom: 0.6rem; left: max(1.25rem, calc((100% - var(--container)) / 2)); width: fit-content; max-width: 33.75rem; padding: 0; background: transparent; }
}

/* Desktop rhythm: generous section gutters without changing mobile density. */
@media (min-width: 64rem) {
  .service-page {
    --section-space: clamp(5rem, 6vw, 6.5rem);
    --section-heading-gap: clamp(2rem, 3vw, 3rem);
    --section-inset-space: clamp(3rem, 4vw, 4.5rem);
  }
  .service-page .section-heading,
  .service-page .piece-selector header { margin-bottom: var(--section-heading-gap); }
  .service-page .service-intro__copy .section-heading { margin-bottom: 1.5rem; }
  .service-page .piece-selector,
  .service-page .cta-band { padding-block: var(--section-space); }
  .service-page .lead-banner,
  .service-page .model-showcase { padding-block: var(--section-inset-space); }
  .service-page .lead-banner__copy,
  .service-page .model-showcase__copy { padding-block: clamp(2.5rem, 4vw, 4rem); }
  .service-page .service-summary__grid > a,
  .service-page .evidence-strip__grid > div { padding-block: 1.15rem; }
  .service-page .service-info-bento__tip { padding-block: 2.25rem; }
  .service-page .trust-stage article { padding: 2.25rem; }
  .service-page .form-card { padding-block: 3rem; }
  .service-page .footer-certifications { padding-block: var(--section-inset-space); }
  .service-page .site-footer { padding-top: var(--section-space); }
  .service-page .footer-bottom { margin-top: 4rem; padding-block: 2rem; }
  .service-page .service-hero:not(.service-hero--background) { padding-block: 2.25rem 4.5rem; min-height: 40rem; }
}
@media (min-width: 64rem) and (max-width: 74.99rem) {
  .service-page .service-hero--background { padding-top: 2.25rem; }
  .service-page .service-hero--background .service-hero__copy { padding-bottom: 2.5rem; }
}
@media (min-width: 75rem) {
  .service-page .service-bento-stage .home-section-head > div { max-width: 52rem; }
  .service-page .service-info-bento { grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.24fr) minmax(13rem, 0.72fr); align-items: stretch; gap: 2.75rem; }
  .service-page .service-info-bento__panel--types { margin-top: 2.25rem; }
  .service-page .service-info-bento__panel + .service-info-bento__panel { padding-left: clamp(1.5rem, 2.5vw, 2.75rem); border-left: 1px solid #365773; }
  .service-page .service-info-bento__panel h3 { margin-bottom: 0.65rem; }
  .service-page .service-info-bento__panel .editorial-list li { padding-block: 0.9rem; }
  .service-page .service-info-bento__tip { align-self: end; min-height: 14rem; margin-bottom: 0.5rem; padding: 1.5rem; grid-template-rows: auto 1fr auto; align-content: stretch; gap: 0.75rem; }
  .service-page .service-info-bento__tip strong { align-self: end; margin-top: 0; font-size: clamp(1.25rem, 1.8vw, 1.55rem); }
  .service-page .service-hero--background { padding-block: 2.25rem 4.5rem; min-height: 40rem; }
  .service-page .service-hero--background .breadcrumb { margin-bottom: 2.75rem; }
  .service-page .service-hero--background .service-hero__visual > span { bottom: 1.25rem; }
}

@media print {
  .service-page .service-hero__visual { position: absolute; }
  .service-page .insight-stage__visual { position: static; }
}

/* Lead banner v2.8.2: calmer asymmetry, separated caption, and a readable mobile stack. */
.service-page .lead-banner { padding-block: clamp(2.5rem, 5vw, 4.5rem); background: #fff; }
.service-page .lead-banner .container { width: min(100% - 2rem, var(--container)); }
.service-page .lead-banner__inner { align-items: stretch; gap: 0; overflow: hidden; border: 0; border-radius: var(--service-radius); background: var(--service-navy); }
.service-page .lead-banner__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(2rem, 3.4vw, 3.5rem); }
.service-page .lead-banner .eyebrow { margin-bottom: 0.75rem; color: #c1d0dc; }
.service-page .lead-banner h2 { max-width: 19ch; margin-bottom: 1rem; color: #fff; font-size: clamp(1.8rem, 2.5vw, 2.35rem); line-height: 1.13; text-wrap: balance; }
.service-page .lead-banner p { max-width: 49ch; margin-bottom: 0; color: #e7edf2; font-size: 1rem; line-height: 1.65; }
.service-page .lead-banner__steps { margin: 1.65rem 0 1.5rem; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(0.65rem, 1.2vw, 1rem); }
.service-page .lead-banner__steps li { min-width: 0; min-height: 4.5rem; padding: 0.7rem 0 0; grid-template-columns: 1fr; align-content: start; gap: 0.35rem; border-top: 1px solid #365773; border-bottom: 0; font-size: 0.9rem; line-height: 1.45; }
.service-page .lead-banner__steps span { color: #c1d0dc; font-size: 1.15rem; font-weight: 600; }
.service-page .lead-banner .btn--inverse { align-self: flex-start; color: var(--service-navy); background: #fff; box-shadow: none; }
.service-page .lead-banner__visual { display: grid; min-width: 0; min-height: 27rem; grid-template-rows: minmax(0, 1fr) auto; background: #fff; }
.service-page .lead-banner__visual img { position: static; display: block; width: 100%; height: 100%; min-height: 0; object-fit: cover; object-position: center; filter: none; }
.service-page .lead-banner__visual > span { position: static; display: block; padding: 0.9rem 1.25rem; border: 0; border-radius: 0; color: var(--service-navy); background: #fff; font-size: 0.9rem; font-weight: 500; line-height: 1.45; }

@media (min-width: 64rem) {
  .service-page .lead-banner__inner { grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); }
}

@media (max-width: 63.99rem) {
  .service-page .lead-banner { padding-block: 2.25rem; }
  .service-page .lead-banner__inner { grid-template-columns: minmax(0, 1fr); }
  .service-page .lead-banner__copy { padding: clamp(1.5rem, 5vw, 2.25rem); }
  .service-page .lead-banner h2 { max-width: 22ch; }
  .service-page .lead-banner__steps { gap: 0.75rem; }
  .service-page .lead-banner__visual { min-height: 0; grid-template-rows: auto auto; }
  .service-page .lead-banner__visual img { height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
}

@media (max-width: 47.99rem) {
  .service-page .lead-banner .container { width: min(100% - 2rem, var(--container)); }
  .service-page .lead-banner__inner { border-radius: var(--service-radius); }
  .service-page .lead-banner__steps { margin-block: 1.35rem; grid-template-columns: minmax(0, 1fr); gap: 0; }
  .service-page .lead-banner__steps li { min-height: 0; padding-block: 0.65rem; grid-template-columns: 2.5rem minmax(0, 1fr); align-items: center; border-top: 1px solid #365773; font-size: 0.9rem; }
  .service-page .lead-banner .btn--inverse { width: 100%; justify-content: center; }
}

/* Process v2.8.3: compact, evenly aligned editorial cards. */
.service-page .service-journey { padding-block: clamp(3.5rem, 5vw, 5rem); }
.service-page .service-journey > .container > .section-heading { margin-bottom: clamp(1.5rem, 2.4vw, 2.25rem); }
.service-page .service-journey__track { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; gap: 1rem; align-items: stretch; }
.service-page .service-journey__track li { display: flex; min-width: 0; min-height: 0; height: auto; flex-direction: column; align-items: flex-start; padding: 1.35rem; border: 1px solid #dce2e7; border-top: 3px solid var(--service-navy); border-radius: var(--service-radius); background: #fff; }
.service-page .service-journey__track li > span { position: static; display: block; width: auto; height: auto; margin: 0 0 0.85rem; padding: 0; border: 0; border-radius: 0; color: var(--service-navy); background: transparent; font-size: clamp(1.8rem, 2.2vw, 2.25rem); font-weight: 700; line-height: 1; letter-spacing: -0.045em; }
.service-page .service-journey__track h3 { margin: 0 0 0.45rem; padding: 0; color: var(--service-navy); font-size: 1.05rem; line-height: 1.35; }
.service-page .service-journey__track p { max-width: 42ch; margin: 0; color: #56616d; font-size: 0.95rem; line-height: 1.55; }
.service-page .service-journey__track li:not(:last-child)::after { display: none; }

@media (min-width: 64rem) {
  .service-page .service-journey__track { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.1rem; }
  .service-page .service-journey__track--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
}

@media (max-width: 47.99rem) {
  .service-page .service-journey { padding-block: 3.25rem; }
  .service-page .service-journey__track { grid-template-columns: minmax(0, 1fr); gap: 0.75rem; }
  .service-page .service-journey__track li { padding: 1.15rem; }
  .service-page .service-journey__track li > span { margin-bottom: 0.65rem; font-size: 1.8rem; }
}

/* Context photography v2.8.4: give the technical showcase its own service-specific image. */
.service-page .model-showcase { padding-block: clamp(2.5rem, 4.5vw, 4rem); background: #fff; }
.service-page .model-showcase__grid { grid-template-columns: minmax(0, 1fr); gap: 0; overflow: hidden; border-radius: var(--service-radius); background: var(--service-navy); }
.service-page .model-showcase__visual { min-width: 0; min-height: 0; }
.service-page .model-showcase__visual .media-frame { width: 100%; height: auto; overflow: hidden; border-radius: 0; }
.service-page .model-showcase .model-showcase__visual .media-frame img { display: block; width: 100%; height: auto; min-height: 0; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; }
.service-page .model-showcase__copy { min-width: 0; padding: clamp(1.5rem, 3.5vw, 3rem); }
.service-page .model-showcase__copy .editorial-list { grid-template-columns: minmax(0, 1fr); gap: 0; }

@media (min-width: 64rem) {
  .service-page .model-showcase__grid { grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr); align-items: stretch; }
  .service-page .model-showcase__visual .media-frame,
  .service-page .model-showcase .model-showcase__visual .media-frame img { height: 100%; }
  .service-page .model-showcase .model-showcase__visual .media-frame img { aspect-ratio: auto; }
  .service-page .model-showcase__copy .editorial-list { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.25rem; }
}

/* Insight v2.8.5: balanced columns, no sticky drift, and a photo with the same visual weight. */
.service-page .insight-stage { padding-block: clamp(4rem, 6vw, 6.5rem); }
.service-page .insight-stage__grid { gap: clamp(2rem, 4vw, 3.5rem); align-items: start; }
.service-page .insight-stage__copy,
.service-page .insight-stage__visual { min-width: 0; }
.service-page .insight-stage__visual { order: 1; position: static; align-self: stretch; }
.service-page .insight-stage__visual .media-frame { width: 100%; height: auto; overflow: hidden; border: 1px solid #365773; border-radius: var(--service-radius); background: #103b64; }
.service-page .insight-stage__visual .media-frame img { display: block; width: 100%; min-height: 0; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; border: 0; border-radius: 0; box-shadow: none; filter: none; }
.service-page .insight-stage .section-heading { margin-bottom: 1.25rem; }
.service-page .insight-stage .lead { max-width: 62ch; margin-bottom: 0; line-height: 1.65; }
.service-page .insight-stage .table-wrap { margin-top: 1.5rem; }
.service-page .insight-stage .table-wrap table { width: 100%; table-layout: fixed; }
.service-page .insight-stage .table-wrap th,
.service-page .insight-stage .table-wrap td { overflow-wrap: anywhere; }

@media (min-width: 64rem) {
  .service-page .insight-stage__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(2.5rem, 4vw, 4rem); align-items: stretch; }
  .service-page .insight-stage__visual { order: 0; position: static; display: flex; align-items: stretch; }
  .service-page .insight-stage__visual .media-frame { min-height: 100%; }
  .service-page .insight-stage__visual .media-frame img { height: 100%; min-height: 32rem; aspect-ratio: 1 / 1; object-position: center; }
}

@media (max-width: 63.99rem) {
  .service-page .insight-stage__grid,
  .service-page .service-form-stage__grid { grid-template-columns: minmax(0, 1fr); }
  .service-page .insight-stage__visual { width: 100%; }
  .service-page .insight-stage__visual .media-frame img { aspect-ratio: 16 / 10; }
}

@media (max-width: 47.99rem) {
  .service-page .insight-stage { padding-block: 3.25rem; }
  .service-page .insight-stage__grid { gap: 1.5rem; }
  .service-page .insight-stage__visual .media-frame img { aspect-ratio: 4 / 3; }
  .service-page .insight-stage .table-wrap { margin-top: 1.15rem; }
}

/* Trust v2.8.6: matching paired panels, consistent headings, and quiet dividers. */
.service-page .trust-stage { padding-block: clamp(4rem, 6vw, 6.5rem); }
.service-page .trust-stage__grid { grid-template-columns: minmax(0, 1fr); gap: 1rem; align-items: stretch; }
.service-page .trust-stage article,
.service-page .trust-stage article:first-child,
.service-page .trust-stage article:last-child { display: flex; min-width: 0; height: 100%; flex-direction: column; padding: clamp(1.5rem, 3vw, 2.5rem); border: 1px solid #365773; border-radius: var(--service-radius); color: #e7edf2; background: var(--service-navy); }
.service-page .trust-stage article .eyebrow,
.service-page .trust-stage article:first-child .eyebrow { color: #c1d0dc; }
.service-page .trust-stage article h2,
.service-page .trust-stage article:first-child h2 { min-height: 2.5em; margin-bottom: 1rem; color: #fff; font-size: clamp(1.5rem, 2vw, 1.85rem); line-height: 1.25; text-wrap: balance; }
.service-page .trust-stage article p { margin: 0; color: #e7edf2; line-height: 1.65; }
.service-page .trust-stage article p + p { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid #365773; }
.service-page .trust-stage article .editorial-list { width: 100%; margin: 0; }
.service-page .trust-stage article .editorial-list li { padding-block: 0.75rem; border-color: #365773; color: #e7edf2; }
.service-page .trust-stage article .btn--secondary {
  align-self: flex-start;
  margin-top: 1.25rem;
  border-color: #fff;
  color: var(--service-navy);
  background: #fff;
}
.service-page .trust-stage article .btn--secondary:hover,
.service-page .trust-stage article .btn--secondary:focus-visible {
  border-color: #dce4e9;
  color: var(--service-navy);
  background: #eef3f6;
}

@media (min-width: 64rem) {
  .service-page .trust-stage__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1.25rem, 2vw, 2rem); }
}

@media (max-width: 47.99rem) {
  .service-page .trust-stage { padding-block: 3.25rem; }
  .service-page .trust-stage__grid { gap: 0.9rem; }
  .service-page .trust-stage article h2,
  .service-page .trust-stage article:first-child h2 { min-height: 0; }
}

/* H2O signature background: restrained, continuous water-and-textile linework. */
.service-page :is(.service-hero, .service-bento-stage, .insight-stage, .service-form-stage, .related-stage, .cta-band),
.service-page .model-showcase__grid {
  background-image: url('/assets/patterns/h2o-water-textile-dark.svg?v=2.8.9');
  background-repeat: repeat;
  background-size: 720px 720px;
  background-position: center;
}

.service-page :is(.service-intro, .piece-selector, .service-journey, .trust-stage) {
  background-image: url('/assets/patterns/h2o-water-textile-light.svg?v=2.8.9');
  background-repeat: repeat;
  background-size: 900px 900px;
  background-position: center;
}

/* FAQ v2.9.3: aligned with the global editorial FAQ system. */
.service-page .service-faq { padding-block: clamp(4rem, 6vw, 5.75rem); border-block: 1px solid #dce4e9; background-color: #f3f6f8; background-image: none; }
.service-page .service-faq__grid { grid-template-columns: minmax(0, 1fr); gap: 1rem; align-items: stretch; }
.service-page .service-faq__grid > div:first-child { position: static; padding: clamp(1.5rem, 3.5vw, 2.5rem); border: 1px solid #365773; border-radius: var(--service-radius); color: #e7edf2; background: var(--service-navy); }
.service-page .service-faq__grid > div:first-child .eyebrow { color: #a9dfe0; }
.service-page .service-faq__grid > div:first-child h2 { max-width: 15ch; margin-bottom: 0.9rem; color: #fff; font-size: clamp(1.8rem, 2.8vw, 2.4rem); line-height: 1.14; text-wrap: balance; }
.service-page .service-faq__grid > div:first-child > p { max-width: 42ch; margin-bottom: 1.25rem; color: #e7edf2; line-height: 1.65; }
.service-page .faq-assurance { margin-top: 1.5rem; padding: 1.15rem 1.25rem; border: 1px solid #365773; border-radius: calc(var(--service-radius) - 0.15rem); color: #d8e7ef; background: #0b355d; }
.service-page .faq-assurance strong { display: block; margin-bottom: 0.35rem; color: #fff; font-size: 0.95rem; }
.service-page .faq-assurance span { display: block; color: #cbdbe6; font-size: 0.9rem; line-height: 1.55; }
.service-page .service-faq .faq-list { gap: 0.75rem; align-content: start; }
.service-page .service-faq .faq-list details,
.service-page .service-faq .faq-list details[open] { overflow: hidden; border: 1px solid #dce4e9; border-radius: var(--service-radius); background: #fff; box-shadow: none; transition: border-color 160ms ease, background-color 160ms ease; }
.service-page .service-faq .faq-list details:hover { border-color: #9bb2c1; }
.service-page .service-faq .faq-list details[open] { border-color: #7894a7; border-left: 0.22rem solid var(--service-blue); background: #fbfcfd; box-shadow: 0 0.75rem 1.8rem rgb(7 27 47 / 7%); }
.service-page .service-faq .faq-list summary { min-height: 4.35rem; padding: 0.85rem 1rem; grid-template-columns: 2.35rem minmax(0, 1fr) 2.25rem; gap: 0.8rem; color: var(--service-navy); font-size: 1.02rem; font-weight: 600; line-height: 1.45; }
.service-page .service-faq .faq-list__index { display: grid; width: 2.15rem; height: 2.15rem; place-items: center; border: 1px solid #d9e5eb; border-radius: 0.4rem; color: var(--service-navy); background: #f2f6f8; font-size: 0.78rem; }
.service-page .service-faq .faq-list__toggle { width: 2.15rem; height: 2.15rem; border: 1px solid #d9e5eb; border-radius: 0.4rem; background: #f7f9fa; }
.service-page .service-faq .faq-list details[open] .faq-list__toggle { border-color: #b8cbd6; background: #eef4f7; }
.service-page .service-faq .faq-list__toggle::before,
.service-page .service-faq .faq-list__toggle::after { background: var(--service-navy); }
.service-page .service-faq .faq-list__answer { padding: 0 1rem 1.15rem; }
.service-page .service-faq .faq-list__answer p { padding-top: 0.9rem; border-top: 1px solid #e2e9ed; color: #566674; font-size: 0.96rem; line-height: 1.65; }

/* Evaluation block v2.9.1: balanced columns, calm surfaces, and no decorative pattern. */
.service-page .service-bento-stage {
  padding-block: clamp(3.5rem, 6vw, 5.5rem);
  border: 0;
  background: var(--service-navy);
  background-image: none;
}
.service-page .service-bento-stage .home-section-head { margin-bottom: clamp(1.75rem, 3vw, 2.5rem); }
.service-page .service-bento-stage .home-section-head > div { max-width: 56rem; }
.service-page .service-bento-stage .section-heading { margin-bottom: 0; }
.service-page .service-info-bento {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: auto;
  align-items: stretch;
  gap: 1.25rem 1.5rem;
}
.service-page .service-info-bento__panel,
.service-page .service-info-bento__panel + .service-info-bento__panel {
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: clamp(1.25rem, 2.5vw, 1.75rem);
  border: 1px solid #244d72;
  border-radius: var(--service-radius);
  background: #0b355d;
}
.service-page .service-info-bento__panel + .service-info-bento__panel { border-left: 1px solid #244d72; }
.service-page .service-info-bento__index { margin-bottom: 0.6rem; color: #a9dfe0; font-size: 1.8rem; }
.service-page .service-info-bento__panel h3 { margin-bottom: 0.75rem; color: #fff; font-size: 1.12rem; }
.service-page .service-info-bento__panel .editorial-list { margin: 0; }
.service-page .service-info-bento__panel .editorial-list li { padding-block: 0.72rem; border-color: #365773; color: #e7edf2; line-height: 1.5; }
.service-page .service-info-bento__tip {
  grid-column: 1 / -1;
  grid-template-columns: minmax(8rem, 0.35fr) minmax(0, 1fr) minmax(12rem, 0.75fr);
  min-height: 0;
  align-items: center;
  gap: 1rem 1.5rem;
  margin: 0;
  padding: 1.15rem clamp(1.25rem, 2.5vw, 1.75rem);
  border: 1px solid #244d72;
  border-radius: var(--service-radius);
  color: #d8e7ef;
  background: #082e54;
}
.service-page .service-info-bento__tip span { color: #a9dfe0; font-size: 0.85rem; font-weight: 700; }
.service-page .service-info-bento__tip strong { margin: 0; color: #fff; font-size: clamp(1.1rem, 1.6vw, 1.35rem); line-height: 1.3; }
.service-page .service-info-bento__tip small { margin: 0; color: #c1d0dc; font-size: 0.92rem; }

@media (min-width: 64rem) {
  .service-page .service-faq__grid { grid-template-columns: minmax(18rem, 0.78fr) minmax(0, 1.22fr); gap: clamp(1.5rem, 3vw, 2.75rem); }
  .service-page .service-faq__grid > div:first-child { align-self: stretch; }
}

@media (min-width: 48rem) {
  .service-page .service-info-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1.5rem; }
  .service-page .service-info-bento__panel--types { margin-top: 0; }
  .service-page .service-info-bento__panel + .service-info-bento__panel { padding-left: clamp(1.25rem, 2.5vw, 1.75rem); border-left: 1px solid #244d72; }
  .service-page .service-info-bento__tip { grid-column: 1 / -1; }
}

@media (max-width: 47.99rem) {
  .service-page .service-bento-stage { padding-block: 3.25rem; }
  .service-page .service-info-bento { grid-template-columns: minmax(0, 1fr); gap: 0.9rem; }
  .service-page .service-info-bento__panel + .service-info-bento__panel { padding-top: 1.25rem; border-top: 1px solid #244d72; }
  .service-page .service-info-bento__tip { grid-column: 1; grid-template-columns: 1fr; gap: 0.45rem; padding: 1.1rem 1.25rem; }
}

@media (max-width: 47.99rem) {
  .service-page .service-faq { padding-block: 3.25rem; }
  .service-page .service-faq__grid { gap: 1rem; }
  .service-page .service-faq .faq-list { gap: 0.65rem; }
  .service-page .service-faq .faq-list summary { min-height: 4rem; padding: 0.75rem; grid-template-columns: 2rem minmax(0, 1fr) 2rem; gap: 0.55rem; font-size: 0.98rem; }
  .service-page .service-faq .faq-list__index,
  .service-page .service-faq .faq-list__toggle { width: 1.9rem; height: 1.9rem; }
  .service-page .service-faq .faq-list__answer { padding-inline: 0.75rem; }
}

/* Semantic depth v2.9.2: service-specific topical coverage with readable keyword distribution. */
.service-page .semantic-depth {
  padding-block: clamp(4rem, 7vw, 6.5rem);
  border-block: 1px solid #dce4e9;
  background: #f4f6f8;
}
.service-page .semantic-depth__head { max-width: 58rem; margin-bottom: clamp(2rem, 4vw, 3rem); }
.service-page .semantic-depth__head h2 { max-width: 23ch; margin-bottom: 1rem; color: var(--service-navy); font-size: clamp(2rem, 4vw, 3rem); line-height: 1.08; text-wrap: balance; }
.service-page .semantic-depth__head p { max-width: 72ch; margin: 0; color: #4d5f6d; font-size: 1.05rem; line-height: 1.75; }
.service-page .semantic-depth__topics { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; }
.service-page .semantic-depth__topics article { min-width: 0; padding: clamp(1.25rem, 2.5vw, 1.75rem); border: 1px solid #d6e0e6; border-radius: var(--service-radius); background: #fff; }
.service-page .semantic-depth__topics article > span { display: block; margin-bottom: 1rem; color: #47718e; font-size: 0.8rem; font-weight: 800; letter-spacing: 0.1em; }
.service-page .semantic-depth__topics h3 { margin-bottom: 0.75rem; color: var(--service-navy); font-size: clamp(1.05rem, 1.8vw, 1.2rem); line-height: 1.35; text-wrap: balance; }
.service-page .semantic-depth__topics p { margin: 0; color: #536572; font-size: 0.96rem; line-height: 1.7; }
.service-page .semantic-depth__checklist { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; margin-top: 1rem; padding: clamp(1.5rem, 3.5vw, 2.5rem); border-radius: var(--service-radius); color: #e7edf2; background: var(--service-navy); }
.service-page .semantic-depth__checklist .eyebrow { color: #a9dfe0; }
.service-page .semantic-depth__checklist h3 { margin-bottom: 0.65rem; color: #fff; font-size: clamp(1.45rem, 2.5vw, 2rem); line-height: 1.2; }
.service-page .semantic-depth__checklist p { margin: 0; color: #cbdbe6; line-height: 1.65; }
.service-page .semantic-depth__checklist ul { margin: 0; padding: 0; list-style: none; }
.service-page .semantic-depth__checklist li { padding-block: 0.75rem; border-bottom: 1px solid #365773; color: #dbe7ee; line-height: 1.55; }
.service-page .semantic-depth__checklist li:first-child { padding-top: 0; }
.service-page .semantic-depth__checklist li:last-child { padding-bottom: 0; border-bottom: 0; }
.service-page .semantic-depth__checklist strong { color: #fff; }
.service-page .semantic-depth__action {
  display: grid;
  gap: 0.55rem;
  margin-top: 1.35rem;
  padding-top: 1.15rem;
  border-top: 1px solid rgb(255 255 255 / 18%);
}
.service-page .semantic-depth__action > .btn { width: fit-content; justify-content: center; }
.service-page .semantic-depth__action > small { color: #cbdbe6; font-size: 0.8rem; line-height: 1.45; }
.service-page .semantic-depth__action .photo-choice { margin-top: 0; }

@media (min-width: 48rem) {
  .service-page .semantic-depth__topics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-page .semantic-depth__checklist { grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr); gap: clamp(2rem, 5vw, 4rem); align-items: start; margin-top: 1.5rem; }
}

@media (min-width: 75rem) {
  .service-page .semantic-depth__topics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 47.99rem) {
  .service-page .semantic-depth { padding-block: 3.25rem; }
  .service-page .semantic-depth__head h2 { font-size: 2rem; }
  .service-page .semantic-depth__topics { gap: 0.8rem; }
  .service-page .semantic-depth__action > .btn { width: 100%; }
}

/* Numbered steps v3.0: consistent professional markers on every service page. */
.service-page .service-summary__grid > a {
  grid-template-columns: 3.3rem minmax(0, 1fr);
  gap: 1rem;
}
.service-page .service-summary__grid span,
.service-page .service-journey__track li > span,
.service-page .factor-list span,
.service-page .semantic-depth__topics article > span {
  position: relative;
  display: grid;
  width: 3.05rem;
  height: 3.05rem;
  margin: 0;
  padding: 0;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 18%);
  border-radius: 0.65rem;
  color: #fff;
  background: var(--service-navy);
  box-shadow: 0 0.5rem 1.05rem rgb(6 44 83 / 16%);
  font-size: 0.95rem;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.04em;
  flex: 0 0 auto;
}
.service-page .service-summary__grid span::after,
.service-page .service-journey__track li > span::after,
.service-page .factor-list span::after,
.service-page .semantic-depth__topics article > span::after,
.service-page .lead-banner__steps span::after,
.service-page .service-info-bento__index::after {
  position: absolute;
  right: -0.2rem;
  bottom: -0.2rem;
  width: 0.68rem;
  height: 0.68rem;
  border: 0.15rem solid #fff;
  border-radius: 50%;
  background: var(--lime);
  content: '';
}
.service-page .service-info-bento__index {
  position: relative;
  display: grid;
  width: 3.05rem;
  height: 3.05rem;
  margin: 0 0 1rem;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 22%);
  border-radius: 0.65rem;
  color: var(--service-navy);
  background: #fff;
  box-shadow: 0 0.55rem 1.1rem rgb(0 0 0 / 16%);
  font-size: 0.95rem;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.04em;
}
.service-page .service-journey__track li { padding: 1.35rem; }
.service-page .service-journey__track li > span { position: relative; margin-bottom: 1rem; }
.service-page .factor-list li {
  min-height: 5.6rem;
  grid-template-columns: 3.05rem minmax(0, 1fr);
  align-items: center;
  gap: 1rem;
}
.service-page .semantic-depth__topics article > span { margin-bottom: 1.15rem; }
.service-page .lead-banner__steps li {
  grid-template-columns: 3rem minmax(0, 1fr);
  align-items: center;
  gap: 0.8rem;
}
.service-page .lead-banner__steps span {
  position: relative;
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  border-radius: 0.58rem;
  color: var(--service-navy);
  background: #fff;
  box-shadow: 0 0.4rem 0.9rem rgb(0 0 0 / 16%);
  font-size: 0.82rem;
  font-weight: 850;
  line-height: 1;
  letter-spacing: 0.04em;
}

@media (min-width: 48rem) {
  .service-page .lead-banner__steps li { min-height: 4.75rem; }
}

@media (max-width: 47.99rem) {
  .service-page .service-summary__grid > a { padding-inline: 0; }
  .service-page .service-summary__grid > a:first-child { padding-left: 0; }
  .service-page .service-summary__grid span,
  .service-page .service-journey__track li > span,
  .service-page .factor-list span,
  .service-page .semantic-depth__topics article > span { width: 2.85rem; height: 2.85rem; font-size: 0.88rem; }
}

/* Final neighborhood hub: service page -> every published service + neighborhood page. */
.service-page .published-local {
  color: #fff;
  background: var(--service-navy);
  border-bottom: 1px solid rgb(255 255 255 / 12%);
}
.service-page .published-local__head {
  display: grid;
  gap: 1.5rem;
  align-items: end;
  margin-bottom: 1.75rem;
}
.service-page .published-local__head > div { max-width: 50rem; }
.service-page .published-local__head .eyebrow { color: #8ad9e1; }
.service-page .published-local__head h2 {
  margin-bottom: 0.7rem;
  color: #fff;
  font-size: clamp(1.9rem, 3vw, 2.65rem);
}
.service-page .published-local__head p {
  max-width: 47rem;
  margin: 0;
  color: #d9e7f0;
}
.service-page .published-local__count {
  display: inline-grid;
  grid-template-columns: auto 1fr;
  gap: 0.65rem;
  align-items: center;
  width: max-content;
  padding: 0.65rem 0.85rem;
  border: 1px solid rgb(255 255 255 / 20%);
  border-radius: var(--service-radius);
  background: rgb(255 255 255 / 7%);
}
.service-page .published-local__count strong {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
}
.service-page .published-local__count small { color: #c8dbe7; }
.service-page .published-local__grid {
  display: grid;
  gap: 0.85rem;
}
.service-page .published-local__card {
  display: grid;
  grid-template-columns: 3.2rem minmax(0, 1fr) 2.65rem;
  gap: 0.9rem;
  align-items: center;
  min-height: 6rem;
  padding: 1rem;
  border: 1px solid #cad9e2;
  border-radius: 0.55rem;
  color: var(--service-navy);
  background: #fff;
  box-shadow: 0 0.75rem 1.8rem rgb(0 0 0 / 12%);
  text-decoration: none;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}
.service-page .published-local__card:hover {
  transform: translateY(-3px);
  border-color: #7fd2dc;
  box-shadow: 0 1rem 2.25rem rgb(0 0 0 / 19%);
  text-decoration: none;
}
.service-page .published-local__icon,
.service-page .published-local__arrow {
  display: grid;
  place-items: center;
}
.service-page .published-local__icon {
  width: 3.2rem;
  height: 3.2rem;
  border-radius: 0.55rem;
  color: #fff;
  background: var(--service-navy);
}
.service-page .published-local__icon svg { width: 1.35rem; }
.service-page .published-local__copy {
  display: grid;
  gap: 0.2rem;
}
.service-page .published-local__copy strong {
  color: var(--service-navy);
  font-size: 1rem;
  line-height: 1.3;
}
.service-page .published-local__copy small { color: #5c6c78; }
.service-page .published-local__arrow {
  width: 2.65rem;
  height: 2.65rem;
  border-radius: 50%;
  color: #fff;
  background: var(--whatsapp);
}
.service-page .published-local__arrow svg { width: 1.15rem; }
.service-page .published-local__back { margin: 1.25rem 0 0; }
.service-page .published-local__back a {
  display: inline-flex;
  gap: 0.45rem;
  align-items: center;
  color: #fff;
  font-weight: 750;
}
.service-page .published-local__back svg { width: 1rem; }

.service-page .evidence-strip__item { height: 100%; align-items: center; }
.service-page .evidence-strip__item .evidence-strip__mark { align-self: center; }
.service-page .evidence-strip__copy { display: grid; min-height: 3.8rem; align-content: center; }
.service-page .evidence-strip__footer {
  display: grid;
  width: min(calc(100% - 2rem), var(--container));
  gap: 0.9rem;
  margin-top: 0.9rem;
  padding: 0.9rem 1rem;
  align-items: center;
  border: 1px solid #d9e3e8;
  border-radius: 0.9rem;
  background: rgb(255 255 255 / 88%);
  box-shadow: 0 0.45rem 1.25rem rgb(6 44 83 / 5%);
}
.service-page .evidence-strip__footer .evidence-strip__note { width: auto; margin: 0; padding: 0; text-align: left; }
.service-page .evidence-strip__footer .btn { width: 100%; justify-content: center; text-align: center; }
.service-page .evidence-strip__footer .btn:only-child { width: min(100%, 18rem); justify-self: center; }
.service-page .service-block-cta { display: flex; margin-top: clamp(1.35rem, 2.5vw, 2rem); justify-content: center; }
.service-page .service-block-cta .btn { min-width: min(100%, 18rem); justify-content: center; text-align: center; }
.service-page .service-block-cta--prominent {
  display: grid;
  width: 100%;
  gap: 1rem;
  padding: clamp(1rem, 2vw, 1.35rem);
  align-items: center;
  justify-content: stretch;
  border: 1px solid #cbdde5;
  border-left: 0.3rem solid var(--whatsapp-cta);
  border-radius: 0.75rem;
  background: #f2f8f5;
  box-shadow: 0 0.55rem 1.4rem rgb(6 44 83 / 6%);
}
.service-page .service-block-cta__copy { display: grid; min-width: 0; gap: 0.25rem; }
.service-page .service-block-cta__copy strong { color: var(--service-navy); font-size: 1.05rem; line-height: 1.3; }
.service-page .service-block-cta__copy span { color: #50616d; font-size: 0.9rem; line-height: 1.5; }
.service-page .service-block-cta--prominent .btn { width: 100%; min-width: 0; }
.service-page .service-block-cta--prominent.service-block-cta--inverse {
  border-color: rgb(255 255 255 / 25%);
  border-left-color: var(--whatsapp-cta);
  background: rgb(255 255 255 / 8%);
  box-shadow: none;
}
.service-page .service-block-cta--inverse .service-block-cta__copy strong { color: #fff; }
.service-page .service-block-cta--inverse .service-block-cta__copy span { color: #d7e2ea; }
.service-page .semantic-checklist .service-block-cta { grid-column: 1 / -1; }
.service-page .service-faq__grid > div:first-child > .btn { display: flex; width: fit-content; margin-top: 1.25rem; }
.service-page .service-faq__grid > div:first-child > .text-link { margin-top: 1rem; }
.service-page .editorial-crosslinks__head { margin-bottom: 1.5rem; }

@media (max-width: 47.99rem) {
  .service-page .evidence-strip__footer .btn,
  .service-page .service-block-cta .btn,
  .service-page .service-faq__grid > div:first-child > .btn { width: 100%; }
}

@media (min-width: 48rem) {
  .service-page .service-block-cta--prominent { grid-template-columns: minmax(0, 1fr) auto; }
  .service-page .service-block-cta--prominent .btn { width: auto; min-width: 15rem; }
  .service-page .evidence-strip__footer:has(.evidence-strip__note):has(.btn) { grid-template-columns: minmax(0, 1fr) auto; }
  .service-page .evidence-strip__footer:has(.evidence-strip__note):has(.btn) .btn { width: 18rem; }
  .service-page .published-local__head { grid-template-columns: minmax(0, 1fr) auto; }
  .service-page .published-local__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 75rem) {
  .service-page .evidence-strip__item { align-items: center; }
  .service-page .evidence-strip__copy {
    display: flex;
    min-height: 3.8rem;
    flex-direction: column;
    justify-content: center;
  }
  .service-page .evidence-strip__grid:has(> .evidence-strip__item:nth-child(4):last-child) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .service-page .published-local__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (prefers-reduced-motion: reduce) {
  .service-page .published-local__card { transition: none; }
}

/* Photo requests always offer a low-friction path for visitors away from the piece. */
.service-page .photo-choice {
  display: grid;
  width: 100%;
  gap: 0.65rem;
  margin-top: 1.15rem;
}
.service-page .photo-choice__actions {
  display: flex;
  min-width: 0;
  gap: 0.65rem;
  flex-wrap: wrap;
  align-items: stretch;
}
.service-page .photo-choice__actions .btn {
  width: auto;
  min-width: 12rem;
  flex: 1 1 12rem;
  justify-content: center;
}
.service-page .photo-choice > small {
  display: block;
  max-width: 48rem;
  color: #56616d;
  font-size: 0.82rem;
  line-height: 1.5;
}
.service-page a.btn.photo-choice__secondary[href="#orcamento"] {
  border-color: #13833f;
  color: #0b6f37;
  background: #fff;
  box-shadow: none;
}
.service-page a.btn.photo-choice__secondary[href="#orcamento"]:hover {
  border-color: #0f6b34;
  color: #fff;
  background: #0f6b34;
}
.service-page .photo-choice--inverse > small,
.service-page .lead-banner .photo-choice > small,
.service-page .sofa-models__cta .photo-choice > small,
.service-page .semantic-depth__checklist .photo-choice > small,
.service-page .editorial-crosslinks__conversion .photo-choice > small {
  color: #d7e2ea;
}
.service-page .photo-choice--inverse a.btn.photo-choice__secondary[href="#orcamento"],
.service-page .lead-banner a.btn.photo-choice__secondary[href="#orcamento"],
.service-page .sofa-models__cta a.btn.photo-choice__secondary[href="#orcamento"],
.service-page .semantic-depth__checklist a.btn.photo-choice__secondary[href="#orcamento"],
.service-page .editorial-crosslinks__conversion a.btn.photo-choice__secondary[href="#orcamento"] {
  border-color: rgb(255 255 255 / 68%);
  color: #fff;
  background: transparent;
}
.service-page .photo-choice--inverse a.btn.photo-choice__secondary[href="#orcamento"]:hover,
.service-page .lead-banner a.btn.photo-choice__secondary[href="#orcamento"]:hover,
.service-page .sofa-models__cta a.btn.photo-choice__secondary[href="#orcamento"]:hover,
.service-page .semantic-depth__checklist a.btn.photo-choice__secondary[href="#orcamento"]:hover,
.service-page .editorial-crosslinks__conversion a.btn.photo-choice__secondary[href="#orcamento"]:hover {
  border-color: #fff;
  color: var(--service-navy);
  background: #fff;
}
.service-page .lead-banner .photo-choice { margin-top: 0; }
.service-page .sofa-models__cta .photo-choice { min-width: min(100%, 24rem); margin-top: 0; gap: 0.55rem; }
.service-page .sofa-models__cta .photo-choice__actions { display: grid; }
.service-page .sofa-models__cta .photo-choice__actions .btn { width: 100%; min-width: 0; }
.service-page .local-answer__card .photo-choice { margin-top: 1rem; }
.service-page .local-answer__card .photo-choice > small { color: #5b6c78; }
.service-page .local-sofa-types__help .photo-choice { margin-top: 0; }
.service-page .local-sofa-types__help .photo-choice__actions { display: grid; }
.service-page .local-sofa-types__help .photo-choice__actions .btn { width: 100%; min-width: 0; }

@media (max-width: 47.99rem) {
  .service-page .photo-choice__actions { display: grid; }
  .service-page .photo-choice__actions .btn { width: 100%; min-width: 0; }
  .service-page .photo-choice > small { font-size: 0.8rem; }
}

/* Sofa conversion page: commercial opening followed by full-width service content. */
.sofa-conversion-page .sofa-conversion-body {
  padding-block: clamp(2rem, 4vw, 4rem);
  background: #fff;
}
.sofa-conversion-page .sofa-conversion-opening {
  display: grid;
  grid-template-areas: "quote" "content";
  gap: 2rem;
  align-items: start;
}
.sofa-conversion-page .sofa-conversion-opening__content {
  display: grid;
  min-width: 0;
}
.sofa-conversion-page .sofa-conversion-flow {
  display: grid;
  min-width: 0;
}
.sofa-conversion-page .sofa-conversion-flow--wide {
  margin-top: clamp(2.75rem, 6vw, 5.5rem);
  border-top: 1px solid #dce5ea;
}
.sofa-conversion-page .sofa-flow-section {
  min-width: 0;
  padding-block: clamp(2.5rem, 5vw, 4rem);
  border-bottom: 1px solid #dce5ea;
}
.sofa-conversion-page .sofa-conversion-opening__content > .sofa-flow-section:first-child { padding-top: 0; }
.sofa-conversion-page .sofa-conversion-opening__content > .sofa-situations {
  padding-bottom: 0;
  border-bottom: 0;
}
.sofa-conversion-page .sofa-flow-heading { max-width: 46rem; margin-bottom: 1.6rem; }
.sofa-conversion-page .sofa-flow-heading h2,
.sofa-conversion-page .sofa-promise h2 {
  max-width: 24ch;
  margin-bottom: 0.75rem;
  color: var(--service-navy);
  font-size: clamp(1.75rem, 3vw, 2.45rem);
}
.sofa-conversion-page .sofa-flow-heading > p,
.sofa-conversion-page .sofa-promise > p {
  max-width: 50rem;
  margin: 0;
  color: #4d6070;
  font-size: 1.02rem;
  line-height: 1.7;
}

.sofa-conversion-page .service-form-stage {
  min-width: 0;
  padding: 0;
  grid-area: quote;
  color: #334155;
  background: transparent;
}
.sofa-conversion-page .sofa-sidebar-sticky {
  overflow: hidden;
  border: 1px solid #d9e3e8;
  border-radius: 0.8rem;
  background: #fff;
  box-shadow: 0 1rem 2.75rem rgb(6 44 83 / 11%);
}
.sofa-conversion-page .sofa-sidebar-badge {
  display: block;
  padding: 0.72rem 1rem;
  color: #fff;
  background: #13833f;
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0.045em;
  text-align: center;
  text-transform: uppercase;
}
.sofa-conversion-page .sofa-sidebar-form {
  padding: 1.35rem;
  border: 0;
  border-radius: 0;
}
.sofa-conversion-page .sofa-sidebar-form h2 {
  margin-bottom: 0.4rem;
  color: var(--service-navy);
  font-size: 1.65rem;
}
.sofa-conversion-page .sofa-sidebar-form > p {
  margin-bottom: 1rem;
  color: #5b6b78;
  font-size: 0.9rem;
  line-height: 1.5;
}
.sofa-conversion-page .sofa-sidebar-form .form-grid--2 { grid-template-columns: minmax(0, 1fr); }
.sofa-conversion-page .sofa-sidebar-form .field { min-width: 0; }
.sofa-conversion-page .sofa-sidebar-form .field label,
.sofa-conversion-page .sofa-sidebar-form .field legend { color: var(--service-navy); font-size: 0.82rem; }
.sofa-conversion-page .sofa-sidebar-form .field input:not([type='checkbox']),
.sofa-conversion-page .sofa-sidebar-form .field select { min-height: 2.8rem; font-size: 0.9rem; }
.sofa-conversion-page .sofa-sidebar-form .choice-group { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sofa-conversion-page .sofa-sidebar-form button[type='submit'] { width: 100%; margin-top: 0.9rem; }
.sofa-conversion-page .sofa-sidebar-form .privacy-note { font-size: 0.7rem; line-height: 1.45; }
.sofa-conversion-page .sofa-sidebar-direct {
  display: grid;
  gap: 0.55rem;
  padding: 1.2rem 1.35rem 1.35rem;
  color: #d8e5ed;
  background: var(--service-navy);
}
.sofa-conversion-page .sofa-sidebar-direct strong { color: #fff; font-size: 1.05rem; }
.sofa-conversion-page .sofa-sidebar-direct span { font-size: 0.86rem; line-height: 1.5; }
.sofa-conversion-page .sofa-sidebar-direct .btn { width: 100%; margin-top: 0.35rem; }
.sofa-conversion-page .sofa-sidebar-direct small { color: #c1d1dc; text-align: center; }
.sofa-conversion-page .sofa-sidebar-direct small a { color: #fff; }

.sofa-conversion-page .sofa-promise {
  padding: clamp(1.35rem, 3vw, 2rem);
  border: 1px solid #cfe2da;
  border-left: 0.35rem solid #13833f;
  border-radius: 0.75rem;
  background: #f0f8f4;
}
.sofa-conversion-page .sofa-promise ul {
  display: grid;
  gap: 0.65rem;
  margin: 1.25rem 0 0;
  padding: 0;
  list-style: none;
}
.sofa-conversion-page .sofa-promise li {
  display: grid;
  grid-template-columns: 1.35rem minmax(0, 1fr);
  gap: 0.55rem;
  align-items: start;
  color: #344b5d;
  font-weight: 700;
}
.sofa-conversion-page .sofa-promise li svg { width: 1.2rem; color: #13833f; }

.sofa-conversion-page .sofa-situations-grid {
  display: grid;
  gap: 1rem;
}
.sofa-conversion-page .sofa-situation-card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 15rem;
  padding: 1.35rem;
  flex-direction: column;
  border: 1px solid #dce5ea;
  border-radius: 0.7rem;
  background: #fff;
  box-shadow: 0 0.65rem 1.6rem rgb(6 44 83 / 6%);
}
.sofa-conversion-page .sofa-situation-card__tag {
  width: fit-content;
  margin-bottom: 1.1rem;
  padding: 0.3rem 0.55rem;
  border-radius: 0.35rem;
  color: #0d6f36;
  background: #e8f6ed;
  font-size: 0.7rem;
  font-weight: 850;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.sofa-conversion-page .sofa-situation-card__index {
  position: absolute;
  top: 1.2rem;
  right: 1.2rem;
  color: #91a1ae;
  font-weight: 800;
}
.sofa-conversion-page .sofa-situation-card h3 { margin-bottom: 0.5rem; color: var(--service-navy); }
.sofa-conversion-page .sofa-situation-card p { color: #526572; font-size: 0.92rem; line-height: 1.55; }
.sofa-conversion-page .sofa-situation-card a {
  display: inline-flex;
  gap: 0.4rem;
  align-items: center;
  margin-top: auto;
  color: #0d7a3c;
  font-size: 0.86rem;
  font-weight: 800;
  text-decoration: none;
}
.sofa-conversion-page .sofa-situation-card a svg { width: 1rem; }

.sofa-conversion-page .sofa-benefits {
  padding-inline: clamp(1.15rem, 3vw, 2rem);
  border-bottom: 0;
  border-radius: 0.8rem;
  color: #dce8ef;
  background: var(--service-navy);
}
.sofa-conversion-page .sofa-benefits .eyebrow { color: #8ad9e1; }
.sofa-conversion-page .sofa-benefits .sofa-flow-heading h2 { color: #fff; }
.sofa-conversion-page .sofa-benefits .sofa-flow-heading > p { color: #d2e0e9; }
.sofa-conversion-page .sofa-benefits-grid { display: grid; }
.sofa-conversion-page .sofa-benefits-grid article { padding: 1.2rem 0; border-top: 1px solid rgb(255 255 255 / 20%); }
.sofa-conversion-page .sofa-benefits-grid article > span { color: #8ad9e1; font-size: 0.78rem; font-weight: 850; }
.sofa-conversion-page .sofa-benefits-grid h3 { margin: 0.55rem 0; color: #fff; }
.sofa-conversion-page .sofa-benefits-grid p { margin: 0; color: #d2e0e9; font-size: 0.92rem; line-height: 1.6; }

.sofa-conversion-page .sofa-process > ol,
.sofa-conversion-page .sofa-budget > ol {
  display: grid;
  gap: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}
.sofa-conversion-page .sofa-process > ol > li {
  display: grid;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: 1rem;
  padding: 1.2rem 0;
  border-top: 1px solid #dce5ea;
}
.sofa-conversion-page .sofa-process > ol > li > span {
  color: #0d7a3c;
  font-size: 1.4rem;
  font-weight: 850;
}
.sofa-conversion-page .sofa-process h3 { margin-bottom: 0.35rem; color: var(--service-navy); }
.sofa-conversion-page .sofa-process li p { margin: 0; color: #526572; font-size: 0.92rem; line-height: 1.6; }

.sofa-conversion-page .sofa-scope > ol,
.sofa-conversion-page .sofa-cleaning-process > ol {
  gap: 1rem;
}
.sofa-conversion-page .sofa-scope > ol > li,
.sofa-conversion-page .sofa-cleaning-process > ol > li {
  padding: 1.25rem;
  border: 1px solid #dce5ea;
  border-radius: 0.7rem;
  background: #fff;
  box-shadow: 0 0.55rem 1.4rem rgb(6 44 83 / 5%);
}
.sofa-conversion-page .sofa-scope > ol > li > span,
.sofa-conversion-page .sofa-cleaning-process > ol > li > span {
  display: grid;
  width: 2.45rem;
  height: 2.45rem;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: #13833f;
  font-size: 0.82rem;
}
.sofa-conversion-page .sofa-cleaning-process {
  margin-block: clamp(1.5rem, 3vw, 2.5rem);
  padding-inline: clamp(1.15rem, 3vw, 2rem);
  border: 1px solid #e0e8ec;
  border-radius: 0.85rem;
  background: #f5f8fa;
}

.sofa-conversion-page .sofa-models-conversion-grid { display: grid; gap: 1rem; }
.sofa-conversion-page .sofa-models-conversion-grid article {
  overflow: hidden;
  border: 1px solid #dce5ea;
  border-radius: 0.7rem;
  background: #fff;
}
.sofa-conversion-page .sofa-models-conversion-grid img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.sofa-conversion-page .sofa-models-conversion-grid article > div { padding: 1rem; }
.sofa-conversion-page .sofa-models-conversion-grid h3 { margin-bottom: 0.45rem; color: var(--service-navy); font-size: 1rem; }
.sofa-conversion-page .sofa-models-conversion-grid p { margin: 0; color: #566978; font-size: 0.86rem; line-height: 1.55; }

.sofa-conversion-page .sofa-budget {
  padding-inline: clamp(1.15rem, 3vw, 2rem);
  border: 1px solid #d7e5dd;
  border-radius: 0.75rem;
  background: #f4f9f6;
}
.sofa-conversion-page .sofa-budget > ol { margin-bottom: 1.3rem; }
.sofa-conversion-page .sofa-budget > ol li {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  gap: 0.8rem;
  padding: 0.85rem 0;
  border-top: 1px solid #d7e5dd;
  align-items: start;
}
.sofa-conversion-page .sofa-budget > ol span { color: #0d7a3c; font-weight: 850; }
.sofa-conversion-page .sofa-budget > ol p { margin: 0; color: #405768; }

.sofa-conversion-page .sofa-commercial-grid {
  display: grid;
  gap: 1.25rem;
  padding-block: clamp(2.5rem, 5vw, 4rem);
  border-bottom: 1px solid #dce5ea;
}
.sofa-conversion-page .sofa-commercial-grid .sofa-flow-section {
  height: 100%;
  padding: clamp(1.35rem, 3vw, 2rem);
  border: 1px solid #dce5ea;
  border-radius: 0.8rem;
}
.sofa-conversion-page .sofa-commercial-process { background: #f8fafb; }
.sofa-conversion-page .sofa-commercial-process > ol { gap: 0.75rem; }
.sofa-conversion-page .sofa-commercial-process > ol > li {
  padding: 1rem;
  border: 1px solid #dce5ea;
  border-radius: 0.65rem;
  background: #fff;
}
.sofa-conversion-page .sofa-commercial-stack {
  display: grid;
  gap: 1.25rem;
}
.sofa-conversion-page .sofa-commercial-grid .sofa-budget,
.sofa-conversion-page .sofa-commercial-grid .sofa-timing { border-color: #cfe2da; }
.sofa-conversion-page .sofa-commercial-grid .sofa-budget { padding-inline: clamp(1.35rem, 3vw, 2rem); }
.sofa-conversion-page .sofa-commercial-grid .sofa-timing { border-left-width: 0.35rem; }

.sofa-conversion-page .sofa-expectations .table-responsive { margin-top: 1.5rem; }
.sofa-conversion-page .sofa-expectations-note {
  margin-top: 1.25rem;
  padding: 1.1rem 1.2rem;
  border-left: 0.3rem solid #13833f;
  background: #eef5f2;
}
.sofa-conversion-page .sofa-expectations-note strong { display: block; margin-bottom: 0.35rem; color: var(--service-navy); }
.sofa-conversion-page .sofa-expectations-note p { margin: 0; color: #4c6170; font-size: 0.9rem; line-height: 1.6; }

.sofa-conversion-page .sofa-preparation-grid { display: grid; gap: 1rem; }
.sofa-conversion-page .sofa-preparation-grid article {
  padding: 1.25rem;
  border: 1px solid #dce5ea;
  border-radius: 0.7rem;
  background: #f8fafb;
}
.sofa-conversion-page .sofa-preparation-grid article:last-child { border-color: #eadfca; background: #fffaf1; }
.sofa-conversion-page .sofa-preparation-grid h3 { display: flex; gap: 0.55rem; align-items: center; color: var(--service-navy); }
.sofa-conversion-page .sofa-preparation-grid h3 svg { width: 1.25rem; color: #13833f; }
.sofa-conversion-page .sofa-preparation-grid article:last-child h3 svg { color: #a86313; }
.sofa-conversion-page .sofa-preparation-grid ul { display: grid; gap: 0.75rem; margin: 1rem 0 0; padding: 0; list-style: none; }
.sofa-conversion-page .sofa-preparation-grid li { display: grid; grid-template-columns: 1.2rem minmax(0, 1fr); gap: 0.55rem; color: #4c6170; font-size: 0.9rem; line-height: 1.5; }
.sofa-conversion-page .sofa-preparation-grid li svg { width: 1rem; color: #13833f; }
.sofa-conversion-page .sofa-preparation-grid article:last-child li svg { color: #a86313; }

.sofa-conversion-page .sofa-flow-faq {
  padding-inline: 0;
  border-block: 0;
  background: transparent;
}
.sofa-conversion-page .sofa-flow-faq .faq-list {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.5rem;
  align-items: start;
}
.sofa-conversion-page .sofa-flow-faq > .btn { width: 100%; margin-top: 1.25rem; }

@media (min-width: 40rem) {
  .sofa-conversion-page .sofa-situations-grid,
  .sofa-conversion-page .sofa-preparation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-benefits-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-benefits-grid article { padding: 1.2rem; border-left: 1px solid rgb(255 255 255 / 20%); }
  .sofa-conversion-page .sofa-benefits-grid article:first-child { padding-left: 0; border-left: 0; }
  .sofa-conversion-page .sofa-models-conversion-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-scope > ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-cleaning-process > ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 64rem) {
  .sofa-conversion-page .sofa-conversion-opening {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 23rem);
    grid-template-areas: "content quote";
    gap: clamp(2rem, 4vw, 4rem);
  }
  .sofa-conversion-page .sofa-sidebar-sticky {
    position: sticky;
    top: 5.75rem;
    max-height: calc(100vh - 6.75rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
  }
  .sofa-conversion-page .sofa-commercial-grid {
    grid-template-columns: minmax(0, 1.2fr) minmax(20rem, 0.8fr);
    align-items: start;
  }
  .sofa-conversion-page .sofa-flow-faq .faq-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 75rem) {
  .sofa-conversion-page .sofa-cleaning-process > ol { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-commercial-process > ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Sofa sales redesign: visual conversion system adapted from the approved service-page reference. */
.sofa-conversion-page {
  --sofa-ink: #062f58;
  --sofa-green: #0b8a43;
  --sofa-lime: #22d66f;
  --sofa-mint: #edf8f3;
  --sofa-sky: #f2f7fa;
  --sofa-warm: #fff3c4;
  --sofa-gold: #f1bd33;
  --sofa-line: #d8e3e9;
  --sofa-muted: #526777;
}

.sofa-conversion-page .sofa-sales-hero {
  position: relative;
  overflow: hidden;
  padding-block: 0.9rem clamp(2.5rem, 5vw, 4.5rem);
  color: #fff;
  background:
    radial-gradient(circle at 20% 15%, rgb(27 94 137 / 42%), transparent 34%),
    linear-gradient(135deg, #052848 0%, var(--sofa-ink) 58%, #084a69 100%);
}
.sofa-conversion-page .sofa-sales-hero .breadcrumb { position: relative; z-index: 2; margin-bottom: clamp(1.5rem, 3vw, 2.75rem); }
.sofa-conversion-page .sofa-sales-hero .breadcrumb a,
.sofa-conversion-page .sofa-sales-hero .breadcrumb span { color: #d6e5ed; }
.sofa-conversion-page .sofa-sales-hero .breadcrumb li + li::before { color: #7fa0b7; }
.sofa-conversion-page .sofa-sales-hero__grid { display: grid; gap: 2rem; align-items: center; }
.sofa-conversion-page .sofa-sales-hero__copy { position: relative; z-index: 2; }
.sofa-conversion-page .sofa-sales-kicker {
  display: inline-flex;
  gap: 0.55rem;
  align-items: center;
  margin-bottom: 1.2rem;
  padding: 0.48rem 0.72rem;
  border: 1px solid rgb(255 255 255 / 24%);
  border-radius: 999px;
  color: #c9f6d9;
  background: rgb(255 255 255 / 8%);
  font-size: 0.76rem;
  font-weight: 850;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}
.sofa-conversion-page .sofa-sales-kicker svg { width: 1.15rem; }
.sofa-conversion-page .sofa-sales-hero h1 {
  max-width: 15ch;
  margin: 0 0 1rem;
  color: #fff;
  font-size: clamp(2.35rem, 4.8vw, 4.15rem);
  line-height: 0.98;
  letter-spacing: -0.045em;
}
.sofa-conversion-page .sofa-sales-hero .lead {
  max-width: 41rem;
  margin: 0;
  color: #dbe8ef;
  font-size: clamp(1.02rem, 1.6vw, 1.2rem);
  line-height: 1.65;
}
.sofa-conversion-page .sofa-sales-hero__actions {
  display: flex;
  gap: 0.8rem;
  align-items: center;
  margin-top: 1.7rem;
  flex-wrap: wrap;
}
.sofa-conversion-page .sofa-sales-hero__whatsapp {
  display: inline-flex;
  gap: 0.5rem;
  align-items: center;
  min-height: 3rem;
  padding-inline: 0.8rem;
  color: #fff;
  font-weight: 800;
  text-decoration: none;
}
.sofa-conversion-page .sofa-sales-hero__whatsapp svg { width: 1.25rem; color: #7bf0a3; }
.sofa-conversion-page .sofa-sales-hero__proof {
  display: grid;
  gap: 0.55rem;
  margin: 1.55rem 0 0;
  padding: 0;
  color: #e6f0f5;
  font-size: 0.82rem;
  font-weight: 750;
  list-style: none;
}
.sofa-conversion-page .sofa-sales-hero__proof li { display: flex; gap: 0.45rem; align-items: center; }
.sofa-conversion-page .sofa-sales-hero__proof svg { width: 1.05rem; color: #62e890; }
.sofa-conversion-page .sofa-sales-hero__visual {
  position: relative;
  overflow: hidden;
  width: calc(100% + 2.5rem);
  margin: 0 -1.25rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.sofa-conversion-page .sofa-sales-hero__visual::after {
  display: none;
}
.sofa-conversion-page .sofa-sales-hero__visual picture { display: block; }
.sofa-conversion-page .sofa-sales-hero__visual img { display: block; width: 100%; height: auto; min-height: 0; aspect-ratio: 4 / 3; object-fit: cover; object-position: center; }
.sofa-conversion-page .sofa-sales-hero__visual figcaption {
  position: absolute;
  z-index: 2;
  right: 1.15rem;
  bottom: 1.15rem;
  left: 1.15rem;
  display: grid;
  gap: 0.15rem;
  color: #fff;
}
.sofa-conversion-page .sofa-sales-hero__visual figcaption span { color: #91f0b1; font-size: 0.75rem; font-weight: 850; letter-spacing: 0.05em; text-transform: uppercase; }
.sofa-conversion-page .sofa-sales-hero__visual figcaption strong { color: #fff; font-size: clamp(1.1rem, 2vw, 1.45rem); }

.sofa-conversion-page .evidence-strip { border-bottom: 1px solid var(--sofa-line); background: #fff; }
.sofa-conversion-page .evidence-strip__grid { padding-block: 0.35rem; }
.sofa-conversion-page .evidence-strip__item { border-color: #e0e8ec; }
.sofa-conversion-page .evidence-strip__mark { color: var(--sofa-green); background: var(--sofa-mint); }

.sofa-conversion-page .sofa-sales-opening {
  padding-block: clamp(2.5rem, 5vw, 4.75rem);
  background: var(--sofa-sky);
}
.sofa-conversion-page .sofa-sales-opening__grid {
  display: grid;
  grid-template-areas: "assurance" "form" "content";
  gap: 1.5rem;
  align-items: start;
}
.sofa-conversion-page .sofa-sales-assurance {
  display: grid;
  grid-area: assurance;
  grid-template-columns: 3rem minmax(0, 1fr);
  gap: 1rem;
  padding: clamp(1.25rem, 3vw, 1.8rem);
  border: 1px solid #efd176;
  border-left: 0.4rem solid var(--sofa-gold);
  border-radius: 0.85rem;
  background: var(--sofa-warm);
  box-shadow: 0 0.8rem 2rem rgb(73 57 8 / 8%);
}
.sofa-conversion-page .sofa-sales-assurance__icon {
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
  border-radius: 50%;
  color: var(--sofa-ink);
  background: #fff;
}
.sofa-conversion-page .sofa-sales-assurance__icon svg { width: 1.5rem; }
.sofa-conversion-page .sofa-sales-assurance h2 { max-width: 24ch; margin: 0.15rem 0 0.5rem; color: var(--sofa-ink); font-size: clamp(1.7rem, 3vw, 2.35rem); }
.sofa-conversion-page .sofa-sales-assurance p { max-width: 48rem; margin: 0; color: #5a4c25; line-height: 1.65; }
.sofa-conversion-page .sofa-sales-assurance ul { display: flex; gap: 0.65rem 1.2rem; margin: 1rem 0 0; padding: 0; flex-wrap: wrap; list-style: none; }
.sofa-conversion-page .sofa-sales-assurance li { display: flex; gap: 0.35rem; align-items: center; color: #3c432f; font-size: 0.82rem; font-weight: 800; }
.sofa-conversion-page .sofa-sales-assurance li svg { width: 1rem; color: var(--sofa-green); }

.sofa-conversion-page .sofa-sales-opening .service-form-stage { grid-area: form; padding: 0; background: transparent; }
.sofa-conversion-page .sofa-sidebar-sticky {
  overflow: hidden;
  border: 1px solid #d0dde4;
  border-radius: 0.85rem;
  background: #fff;
  box-shadow: 0 1.25rem 3rem rgb(6 47 88 / 14%);
}
.sofa-conversion-page .sofa-sidebar-badge {
  display: block;
  padding: 0.78rem 1rem;
  color: #fff;
  background: var(--sofa-green);
  font-size: 0.75rem;
  font-weight: 900;
  letter-spacing: 0.055em;
  text-align: center;
  text-transform: uppercase;
}
.sofa-conversion-page .sofa-sidebar-form { padding: 1.35rem; border: 0; border-radius: 0; }
.sofa-conversion-page .sofa-sidebar-form h2 { margin-bottom: 0.45rem; color: var(--sofa-ink); font-size: 1.65rem; }
.sofa-conversion-page .sofa-sidebar-form > p { margin-bottom: 1rem; color: #576a78; font-size: 0.9rem; line-height: 1.5; }
.sofa-conversion-page .sofa-sidebar-form .form-grid--2 { grid-template-columns: minmax(0, 1fr); }
.sofa-conversion-page .sofa-sidebar-form .field label,
.sofa-conversion-page .sofa-sidebar-form .field legend { color: var(--sofa-ink); font-size: 0.8rem; }
.sofa-conversion-page .sofa-sidebar-form .field input:not([type='checkbox']),
.sofa-conversion-page .sofa-sidebar-form .field select { min-height: 2.8rem; font-size: 0.9rem; }
.sofa-conversion-page .sofa-sidebar-form .choice-group { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sofa-conversion-page .sofa-sidebar-form button[type='submit'] { width: 100%; margin-top: 0.8rem; }
.sofa-conversion-page .sofa-sidebar-form .privacy-note { font-size: 0.69rem; line-height: 1.45; }
.sofa-conversion-page .sofa-sidebar-direct { display: grid; gap: 0.55rem; padding: 1.2rem 1.35rem 1.35rem; color: #d8e6ee; background: var(--sofa-ink); }
.sofa-conversion-page .sofa-sidebar-direct strong { color: #fff; font-size: 1.05rem; }
.sofa-conversion-page .sofa-sidebar-direct span { font-size: 0.86rem; line-height: 1.5; }
.sofa-conversion-page .sofa-sidebar-direct .btn { width: 100%; margin-top: 0.3rem; }
.sofa-conversion-page .sofa-sidebar-direct small { color: #c6d7e1; text-align: center; }
.sofa-conversion-page .sofa-sidebar-direct small a { color: #fff; }

.sofa-conversion-page .sofa-sales-opening__content { display: grid; grid-area: content; gap: clamp(3rem, 5vw, 4.5rem); min-width: 0; }
.sofa-conversion-page .sofa-flow-heading { max-width: 48rem; margin-bottom: 1.5rem; }
.sofa-conversion-page .sofa-flow-heading h2,
.sofa-conversion-page .sofa-sales-section-head h2 {
  max-width: 23ch;
  margin: 0.25rem 0 0.7rem;
  color: var(--sofa-ink);
  font-size: clamp(1.85rem, 3.6vw, 2.8rem);
  line-height: 1.08;
  letter-spacing: -0.035em;
}
.sofa-conversion-page .sofa-flow-heading p,
.sofa-conversion-page .sofa-sales-section-head > p { max-width: 52rem; margin: 0; color: var(--sofa-muted); line-height: 1.7; }
.sofa-conversion-page .sofa-situations-grid { display: grid; gap: 1rem; }
.sofa-conversion-page .sofa-situation-card {
  position: relative;
  display: flex;
  min-width: 0;
  min-height: 14rem;
  padding: 1.35rem;
  flex-direction: column;
  border: 1px solid var(--sofa-line);
  border-top: 0.28rem solid #46bc70;
  border-radius: 0.75rem;
  background: #fff;
  box-shadow: 0 0.65rem 1.6rem rgb(6 47 88 / 6%);
}
.sofa-conversion-page .sofa-situation-card__tag { width: fit-content; margin-bottom: 1rem; padding: 0.28rem 0.55rem; border-radius: 0.35rem; color: #08723a; background: #e8f7ee; font-size: 0.68rem; font-weight: 900; letter-spacing: 0.05em; text-transform: uppercase; }
.sofa-conversion-page .sofa-situation-card__index { position: absolute; top: 1.2rem; right: 1.2rem; color: #9aaab5; font-weight: 850; }
.sofa-conversion-page .sofa-situation-card h3 { max-width: 21ch; margin-bottom: 0.45rem; color: var(--sofa-ink); font-size: 1.05rem; }
.sofa-conversion-page .sofa-situation-card p { margin-bottom: 1rem; color: #526777; font-size: 0.9rem; line-height: 1.58; }
.sofa-conversion-page .sofa-situation-card a { display: inline-flex; gap: 0.35rem; align-items: center; margin-top: auto; color: #08783b; font-size: 0.83rem; font-weight: 850; text-decoration: none; }
.sofa-conversion-page .sofa-situation-card a svg { width: 1rem; }

.sofa-conversion-page .sofa-sales-journey { padding: clamp(1.4rem, 3vw, 2rem); border: 1px solid var(--sofa-line); border-radius: 0.9rem; background: #fff; }
.sofa-conversion-page .sofa-sales-journey > ol { display: grid; gap: 0.8rem; margin: 0 0 1.35rem; padding: 0; list-style: none; }
.sofa-conversion-page .sofa-sales-journey > ol > li { display: grid; grid-template-columns: 2.7rem minmax(0, 1fr); gap: 0.8rem; padding: 1rem; border: 1px solid var(--sofa-line); border-radius: 0.65rem; background: #f9fbfc; }
.sofa-conversion-page .sofa-sales-journey > ol > li > span { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; border-radius: 50%; color: #fff; background: var(--sofa-green); font-size: 0.78rem; font-weight: 900; }
.sofa-conversion-page .sofa-sales-journey small { color: #0a7b3d; font-size: 0.66rem; font-weight: 900; letter-spacing: 0.05em; text-transform: uppercase; }
.sofa-conversion-page .sofa-sales-journey h3 { margin: 0.2rem 0 0.3rem; color: var(--sofa-ink); font-size: 1rem; }
.sofa-conversion-page .sofa-sales-journey li p { margin: 0; color: #536876; font-size: 0.86rem; line-height: 1.55; }

.sofa-conversion-page .sofa-sales-scope { background: #fff; }
.sofa-conversion-page .sofa-sales-scope__grid { display: grid; gap: clamp(2rem, 5vw, 4rem); align-items: center; }
.sofa-conversion-page .sofa-sales-scope figure { position: relative; overflow: hidden; margin: 0; border-radius: 0.9rem; box-shadow: 0 1.2rem 3rem rgb(6 47 88 / 13%); }
.sofa-conversion-page .sofa-sales-scope figure::after { position: absolute; inset: 45% 0 0; background: linear-gradient(180deg, transparent, rgb(2 34 62 / 78%)); content: ''; }
.sofa-conversion-page .sofa-sales-scope figure img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
.sofa-conversion-page .sofa-sales-scope figcaption { position: absolute; z-index: 1; right: 1rem; bottom: 1rem; left: 1rem; color: #fff; font-size: 0.82rem; font-weight: 750; line-height: 1.45; }
.sofa-conversion-page .sofa-sales-scope__content h2 { max-width: 17ch; margin: 0.25rem 0 0.65rem; color: var(--sofa-ink); font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.04; letter-spacing: -0.04em; }
.sofa-conversion-page .sofa-sales-scope__content > p { margin: 0; color: var(--sofa-muted); line-height: 1.7; }
.sofa-conversion-page .sofa-sales-scope__content > ul { display: grid; gap: 0.75rem; margin: 1.5rem 0; padding: 0; list-style: none; }
.sofa-conversion-page .sofa-sales-scope__content > ul > li { display: grid; grid-template-columns: 1.8rem minmax(0, 1fr); gap: 0.75rem; padding: 0.85rem 0; border-top: 1px solid var(--sofa-line); }
.sofa-conversion-page .sofa-sales-scope__content > ul > li > svg { width: 1.25rem; margin-top: 0.15rem; color: var(--sofa-green); }
.sofa-conversion-page .sofa-sales-scope__content h3 { margin: 0 0 0.2rem; color: var(--sofa-ink); font-size: 1rem; }
.sofa-conversion-page .sofa-sales-scope__content li p { margin: 0; color: #586c79; font-size: 0.86rem; line-height: 1.5; }

.sofa-conversion-page .sofa-sales-outcome { color: #dbe8ef; background: var(--sofa-ink); }
.sofa-conversion-page .sofa-sales-outcome__grid { display: grid; gap: clamp(2rem, 5vw, 4rem); align-items: stretch; }
.sofa-conversion-page .sofa-sales-outcome__copy { align-self: center; }
.sofa-conversion-page .sofa-sales-outcome h2 { max-width: 19ch; margin: 0.3rem 0 0.8rem; color: #fff; font-size: clamp(2rem, 4.2vw, 3.35rem); line-height: 1.03; letter-spacing: -0.04em; }
.sofa-conversion-page .sofa-sales-outcome__copy > p { max-width: 43rem; margin: 0; color: #cbdce6; line-height: 1.7; }
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid { display: grid; gap: 0; margin-top: 1.6rem; }
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid article { padding: 1.05rem 0; border-top: 1px solid rgb(255 255 255 / 18%); }
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid article > span { color: #7ef0a4; font-size: 0.72rem; font-weight: 900; }
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid h3 { margin: 0.35rem 0; color: #fff; font-size: 1rem; }
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid p { margin: 0; color: #cbdce6; font-size: 0.85rem; line-height: 1.55; }
.sofa-conversion-page .sofa-sales-outcome figure { position: relative; overflow: hidden; min-height: 24rem; margin: 0; border-radius: 0.9rem; }
.sofa-conversion-page .sofa-sales-outcome figure::after { position: absolute; inset: 45% 0 0; background: linear-gradient(180deg, transparent, rgb(2 34 62 / 80%)); content: ''; }
.sofa-conversion-page .sofa-sales-outcome figure img { width: 100%; height: 100%; min-height: 24rem; object-fit: cover; }
.sofa-conversion-page .sofa-sales-outcome figcaption { position: absolute; z-index: 1; right: 1rem; bottom: 1rem; left: 1rem; color: #fff; font-size: 0.86rem; font-weight: 800; line-height: 1.45; }

.sofa-conversion-page .sofa-sales-section-head { max-width: 52rem; margin-bottom: clamp(1.7rem, 4vw, 2.5rem); }
.sofa-conversion-page .sofa-sales-method { background: #fff; }
.sofa-conversion-page .sofa-sales-method .sofa-sales-section-head { margin-inline: auto; text-align: center; }
.sofa-conversion-page .sofa-sales-method .sofa-sales-section-head h2,
.sofa-conversion-page .sofa-sales-method .sofa-sales-section-head p { margin-inline: auto; }
.sofa-conversion-page .sofa-sales-method__grid { display: grid; gap: 1rem; }
.sofa-conversion-page .sofa-sales-method__grid article { position: relative; padding: 1.35rem; border: 1px solid var(--sofa-line); border-radius: 0.8rem; background: #fff; box-shadow: 0 0.65rem 1.7rem rgb(6 47 88 / 6%); }
.sofa-conversion-page .sofa-sales-method__grid article > span { display: grid; width: 2.6rem; height: 2.6rem; margin-bottom: 1rem; place-items: center; border-radius: 50%; color: #fff; background: var(--sofa-green); font-size: 0.78rem; font-weight: 900; }
.sofa-conversion-page .sofa-sales-method__grid h3 { margin-bottom: 0.45rem; color: var(--sofa-ink); font-size: 1.05rem; }
.sofa-conversion-page .sofa-sales-method__grid p { margin: 0; color: #546a78; font-size: 0.88rem; line-height: 1.58; }
.sofa-conversion-page .sofa-method-details { margin-top: 1.2rem; border: 1px solid #cfe0e8; border-radius: 0.75rem; background: var(--sofa-sky); }
.sofa-conversion-page .sofa-method-details summary { display: flex; gap: 0.6rem; align-items: center; padding: 1rem 1.2rem; color: var(--sofa-ink); font-weight: 850; cursor: pointer; list-style: none; }
.sofa-conversion-page .sofa-method-details summary::-webkit-details-marker { display: none; }
.sofa-conversion-page .sofa-method-details summary svg { width: 1.1rem; margin-left: auto; transition: transform 180ms ease; }
.sofa-conversion-page .sofa-method-details[open] summary svg { transform: rotate(90deg); }
.sofa-conversion-page .sofa-method-details > ol { display: grid; gap: 0.75rem; margin: 0; padding: 0 1.2rem 1.2rem; list-style: none; }
.sofa-conversion-page .sofa-method-details > ol > li { display: grid; grid-template-columns: 2rem minmax(0, 1fr); gap: 0.7rem; padding: 1rem; border: 1px solid var(--sofa-line); border-radius: 0.6rem; background: #fff; }
.sofa-conversion-page .sofa-method-details > ol > li > span { color: var(--sofa-green); font-weight: 900; }
.sofa-conversion-page .sofa-method-details h3 { margin: 0 0 0.25rem; color: var(--sofa-ink); font-size: 0.94rem; }
.sofa-conversion-page .sofa-method-details p { margin: 0; color: #566b78; font-size: 0.82rem; line-height: 1.5; }

.sofa-conversion-page .sofa-sales-price { background: var(--sofa-sky); }
.sofa-conversion-page .sofa-sales-price__head { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: 1rem; margin-bottom: 1.25rem; padding: clamp(1.3rem, 3vw, 2rem); border: 1px solid #efd176; border-radius: 0.85rem; background: var(--sofa-warm); }
.sofa-conversion-page .sofa-sales-price__head > span { display: grid; width: 3rem; height: 3rem; place-items: center; border-radius: 50%; color: var(--sofa-ink); background: #fff; }
.sofa-conversion-page .sofa-sales-price__head > span svg { width: 1.45rem; }
.sofa-conversion-page .sofa-sales-price__head h2 { max-width: 25ch; margin: 0.2rem 0 0.5rem; color: var(--sofa-ink); font-size: clamp(1.9rem, 3.8vw, 2.9rem); line-height: 1.06; letter-spacing: -0.035em; }
.sofa-conversion-page .sofa-sales-price__head p { max-width: 52rem; margin: 0; color: #5a4c25; line-height: 1.65; }
.sofa-conversion-page .sofa-sales-price__grid { display: grid; gap: 1.25rem; align-items: start; }
.sofa-conversion-page .sofa-sales-price__grid article { padding: clamp(1.35rem, 3vw, 2rem); border: 1px solid var(--sofa-line); border-radius: 0.8rem; background: #fff; }
.sofa-conversion-page .sofa-sales-price__grid h3 { margin: 0.25rem 0 0.8rem; color: var(--sofa-ink); font-size: clamp(1.45rem, 2.5vw, 2rem); line-height: 1.12; }
.sofa-conversion-page .sofa-sales-price__factors > ol { display: grid; gap: 0; margin: 0 0 1.3rem; padding: 0; list-style: none; }
.sofa-conversion-page .sofa-sales-price__factors > ol li { display: grid; grid-template-columns: 2.3rem minmax(0, 1fr); gap: 0.7rem; padding: 0.9rem 0; border-top: 1px solid var(--sofa-line); }
.sofa-conversion-page .sofa-sales-price__factors > ol span { color: var(--sofa-green); font-weight: 900; }
.sofa-conversion-page .sofa-sales-price__factors > ol p { margin: 0; color: #435b6a; }
.sofa-conversion-page .sofa-sales-price__side { display: grid; gap: 1.25rem; }
.sofa-conversion-page .sofa-sales-price__side article > p { color: #526777; line-height: 1.65; }
.sofa-conversion-page .sofa-sales-price__side ul { display: grid; gap: 0.65rem; margin: 1rem 0 0; padding: 0; list-style: none; }
.sofa-conversion-page .sofa-sales-price__side li { display: grid; grid-template-columns: 1.3rem minmax(0, 1fr); gap: 0.55rem; color: #425a68; font-size: 0.87rem; font-weight: 700; line-height: 1.5; }
.sofa-conversion-page .sofa-sales-price__side li svg { width: 1.1rem; color: var(--sofa-green); }
.sofa-conversion-page .sofa-sales-payment { border-color: #c9e1d3 !important; background: var(--sofa-mint) !important; }
.sofa-conversion-page .sofa-sales-payment > div { display: grid; gap: 0.6rem; }
.sofa-conversion-page .sofa-sales-payment > div > span { display: grid; grid-template-columns: 5rem minmax(0, 1fr); gap: 0.7rem; padding: 0.7rem 0; border-top: 1px solid #c9e1d3; color: #526777; font-size: 0.82rem; }
.sofa-conversion-page .sofa-sales-payment strong { color: var(--sofa-ink); }

.sofa-conversion-page .sofa-models-conversion { background: #fff; }
.sofa-conversion-page .sofa-models-conversion-grid { display: grid; gap: 1rem; }
.sofa-conversion-page .sofa-models-conversion-grid article { overflow: hidden; border: 1px solid var(--sofa-line); border-radius: 0.75rem; background: #fff; box-shadow: 0 0.65rem 1.5rem rgb(6 47 88 / 5%); }
.sofa-conversion-page .sofa-models-conversion-grid img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.sofa-conversion-page .sofa-models-conversion-grid article > div { padding: 1.1rem; }
.sofa-conversion-page .sofa-models-conversion-grid h3 { margin-bottom: 0.45rem; color: var(--sofa-ink); font-size: 1rem; }
.sofa-conversion-page .sofa-models-conversion-grid p { margin: 0; color: #566b78; font-size: 0.86rem; line-height: 1.55; }
.sofa-conversion-page .sofa-expectations-note { margin-top: 1.25rem; padding: 1.1rem 1.2rem; border-left: 0.3rem solid var(--sofa-green); background: var(--sofa-mint); }
.sofa-conversion-page .sofa-expectations-note strong { display: block; margin-bottom: 0.35rem; color: var(--sofa-ink); }
.sofa-conversion-page .sofa-expectations-note p { margin: 0; color: #4d6471; font-size: 0.9rem; line-height: 1.6; }
.sofa-conversion-page .sofa-limit-list { display: grid; gap: 0.7rem; margin: 0.9rem 0 0; padding: 0; list-style: none; }
.sofa-conversion-page .sofa-limit-list li { display: grid; gap: 0.15rem; padding-top: 0.7rem; border-top: 1px solid rgb(6 47 88 / 12%); }
.sofa-conversion-page .sofa-limit-list li strong { margin: 0; font-size: 0.86rem; }
.sofa-conversion-page .sofa-limit-list li span { color: #4d6471; font-size: 0.86rem; line-height: 1.55; }
.sofa-main-page .sofa-limit-list li strong,
.sofa-main-page .sofa-limit-list li span { font-size: var(--service-type-small); line-height: var(--service-leading-small); }

.sofa-conversion-page .sofa-sales-expectations { background: var(--sofa-sky); }
.sofa-conversion-page .sofa-sales-expectations .table-responsive { margin-top: 1.5rem; }
.sofa-conversion-page .sofa-preparation { background: #fff; }
.sofa-conversion-page .sofa-preparation-grid { display: grid; gap: 1rem; }
.sofa-conversion-page .sofa-preparation-grid article { padding: 1.35rem; border: 1px solid var(--sofa-line); border-radius: 0.75rem; background: #f8fbfc; }
.sofa-conversion-page .sofa-preparation-grid article:last-child { border-color: #eadbbd; background: #fffaf0; }
.sofa-conversion-page .sofa-preparation-grid h3 { display: flex; gap: 0.55rem; align-items: center; color: var(--sofa-ink); }
.sofa-conversion-page .sofa-preparation-grid h3 svg { width: 1.2rem; color: var(--sofa-green); }
.sofa-conversion-page .sofa-preparation-grid article:last-child h3 svg { color: #ad6a17; }
.sofa-conversion-page .sofa-preparation-grid ul { display: grid; gap: 0.7rem; margin: 1rem 0 0; padding: 0; list-style: none; }
.sofa-conversion-page .sofa-preparation-grid li { display: grid; grid-template-columns: 1.2rem minmax(0, 1fr); gap: 0.5rem; color: #4f6572; font-size: 0.88rem; line-height: 1.5; }
.sofa-conversion-page .sofa-preparation-grid li svg { width: 1rem; color: var(--sofa-green); }
.sofa-conversion-page .sofa-preparation-grid article:last-child li svg { color: #ad6a17; }

.sofa-conversion-page .sofa-flow-faq { background: var(--sofa-sky); }
.sofa-conversion-page .sofa-flow-faq .faq-list { display: grid; gap: 0.75rem; margin-top: 1.5rem; align-items: start; }
.sofa-conversion-page .sofa-flow-faq .faq-list details { background: #fff; }

.sofa-conversion-page .sofa-sales-final { padding-block: clamp(2.5rem, 5vw, 4rem); color: #dce9f0; background: linear-gradient(135deg, var(--sofa-ink), #075a55); }
.sofa-conversion-page .sofa-sales-final__inner { display: grid; gap: 2rem; align-items: center; }
.sofa-conversion-page .sofa-sales-final h2 { max-width: 20ch; margin: 0.3rem 0 0.7rem; color: #fff; font-size: clamp(2rem, 4.2vw, 3.25rem); line-height: 1.04; letter-spacing: -0.04em; }
.sofa-conversion-page .sofa-sales-final p { max-width: 44rem; color: #d2e2ea; line-height: 1.65; }
.sofa-conversion-page .sofa-sales-final ul { display: flex; gap: 0.7rem 1.4rem; margin: 1.15rem 0 0; padding: 0; flex-wrap: wrap; list-style: none; }
.sofa-conversion-page .sofa-sales-final li { display: flex; gap: 0.4rem; align-items: center; font-size: 0.84rem; font-weight: 800; }
.sofa-conversion-page .sofa-sales-final li svg { width: 1rem; color: #7bf0a3; }
.sofa-conversion-page .sofa-sales-final__actions { display: grid; gap: 0.7rem; }
.sofa-conversion-page .sofa-sales-final__actions > a:not(.btn) { display: flex; gap: 0.5rem; align-items: center; justify-content: center; color: #fff; font-weight: 800; text-decoration: none; }
.sofa-conversion-page .sofa-sales-final__actions > a svg { width: 1.1rem; color: #7bf0a3; }

@media (max-width: 39.99rem) {
  .sofa-conversion-page .sofa-sales-hero__actions { display: grid; }
  .sofa-conversion-page .sofa-sales-hero__actions .btn,
  .sofa-conversion-page .sofa-sales-hero__whatsapp { width: 100%; justify-content: center; }
  .sofa-conversion-page .sofa-sales-assurance,
  .sofa-conversion-page .sofa-sales-price__head { grid-template-columns: minmax(0, 1fr); }
  .sofa-conversion-page .sofa-sales-assurance__icon,
  .sofa-conversion-page .sofa-sales-price__head > span { width: 2.7rem; height: 2.7rem; }
  .sofa-conversion-page .sofa-sidebar-form .choice-group { grid-template-columns: minmax(0, 1fr); }
  .sofa-conversion-page .sofa-sales-journey > .btn,
  .sofa-conversion-page .sofa-sales-scope__content > .btn,
  .sofa-conversion-page .sofa-sales-price__factors > .btn { width: 100%; }
}

@media (min-width: 40rem) {
  .sofa-conversion-page .sofa-sales-hero__proof { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-situations-grid,
  .sofa-conversion-page .sofa-sales-journey > ol,
  .sofa-conversion-page .sofa-sales-method__grid,
  .sofa-conversion-page .sofa-preparation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-models-conversion-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-method-details > ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-sales-final__actions { min-width: 21rem; }
}

@media (min-width: 64rem) {
  .sofa-conversion-page .sofa-main-form { padding: 1.05rem; }
  .sofa-conversion-page .sofa-main-form > p { margin-bottom: 0.7rem; }
  .sofa-conversion-page .sofa-main-form .form-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-main-form .form-grid { gap: 0.7rem; }
  .sofa-conversion-page .sofa-main-form .field:nth-child(3) { grid-column: 1 / -1; }
  .sofa-conversion-page .sofa-main-form input[type='tel'] { font-size: 0.76rem; }
  .sofa-conversion-page .sofa-main-form .form-actions { gap: 0.5rem; margin-top: 0.75rem; }
  .sofa-conversion-page .sofa-sales-opening__grid {
    grid-template-columns: minmax(0, 1fr) minmax(20rem, 23rem);
    grid-template-areas: "assurance form" "content form";
    gap: 2rem clamp(2rem, 4vw, 4rem);
  }
  .sofa-conversion-page .sofa-sales-opening .service-form-stage { align-self: stretch; }
  .sofa-conversion-page .sofa-sales-opening .sofa-sidebar-sticky {
    position: sticky;
    top: 5.75rem;
    max-height: calc(100vh - 7rem);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  :is(.chair-conversion-page, .armchair-conversion-page, .mattress-conversion-page, .rug-conversion-page, .curtain-conversion-page, .blind-conversion-page) .sofa-sales-opening .sofa-sidebar-sticky {
    position: static;
    top: auto;
    max-height: none;
    overflow: hidden;
    overscroll-behavior: auto;
  }
  .sofa-conversion-page .sofa-sales-scope__grid { grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr); }
  .sofa-conversion-page .sofa-sales-outcome__grid { grid-template-columns: minmax(0, 1.2fr) minmax(22rem, 0.8fr); }
  .sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid article { padding: 1rem; border-top: 0; border-left: 1px solid rgb(255 255 255 / 18%); }
  .sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid article:first-child { padding-left: 0; border-left: 0; }
  .sofa-conversion-page .sofa-sales-method__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-method-details > ol { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-sales-price__grid { grid-template-columns: minmax(0, 1.15fr) minmax(21rem, 0.85fr); }
  .sofa-conversion-page .sofa-flow-faq .faq-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-limit-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sofa-conversion-page .sofa-sales-final__inner { grid-template-columns: minmax(0, 1fr) auto; }
}

@media (min-width: 75rem) {
  .sofa-conversion-page .sofa-sales-hero {
    min-height: 40rem;
    padding-block: 1.25rem 3rem;
  }
  .sofa-conversion-page .sofa-sales-hero__grid {
    display: block;
  }
  .sofa-conversion-page .sofa-sales-hero__copy {
    width: 45%;
    max-width: 33.75rem;
  }
  .sofa-conversion-page .sofa-sales-hero .lead {
    max-width: 33.75rem;
  }
  .sofa-conversion-page .sofa-sales-hero__visual {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
  }
  .sofa-conversion-page .sofa-sales-hero__visual picture {
    position: absolute;
    inset: 0;
  }
  .sofa-conversion-page .sofa-sales-hero__visual img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center bottom;
  }
  .sofa-conversion-page .sofa-sales-hero__visual::after {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: block;
    background: linear-gradient(90deg, rgb(6 44 83 / 34%) 0%, rgb(6 44 83 / 18%) 45%, transparent 68%);
    content: '';
    pointer-events: none;
  }
}

/* Humanization pass: fewer template-like effects, flatter hierarchy and more natural rhythm. */
.sofa-conversion-page {
  --sofa-mint: #f1f7f3;
  --sofa-sky: #f6f7f6;
  --sofa-warm: #fff6d8;
}
.sofa-conversion-page .btn { border-radius: 0.28rem; box-shadow: none; }
.sofa-conversion-page .sofa-sales-hero {
  background: #07365e;
}
.sofa-conversion-page .sofa-sales-kicker {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.sofa-conversion-page .sofa-sales-hero h1 { letter-spacing: -0.035em; }
.sofa-conversion-page .sofa-sales-scope figure,
.sofa-conversion-page .sofa-sales-outcome figure {
  border-radius: 0.28rem;
  box-shadow: none;
}
.sofa-conversion-page .sofa-sales-assurance,
.sofa-conversion-page .sofa-sidebar-sticky,
.sofa-conversion-page .sofa-situation-card,
.sofa-conversion-page .sofa-sales-price__head,
.sofa-conversion-page .sofa-sales-price__grid article,
.sofa-conversion-page .sofa-models-conversion-grid article,
.sofa-conversion-page .sofa-preparation-grid article,
.sofa-conversion-page .sofa-method-details {
  border-radius: 0.28rem;
  box-shadow: none;
}
.sofa-conversion-page .sofa-sales-assurance__icon,
.sofa-conversion-page .sofa-sales-price__head > span {
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 0.2rem;
  background: rgb(255 255 255 / 68%);
}
.sofa-conversion-page .sofa-sales-assurance {
  grid-template-columns: 2.4rem minmax(0, 1fr);
  border-left-width: 0.25rem;
}
.sofa-conversion-page .sofa-sales-opening { background: var(--sofa-sky); }
.sofa-conversion-page .sofa-situation-card {
  min-height: 13rem;
  border-top-width: 0.18rem;
}
.sofa-conversion-page .sofa-situation-card__tag {
  padding: 0;
  border-radius: 0;
  background: transparent;
}
.sofa-conversion-page .sofa-sales-journey {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}
.sofa-conversion-page .sofa-sales-journey > ol {
  gap: 0 1.5rem;
}
.sofa-conversion-page .sofa-sales-journey > ol > li {
  grid-template-columns: 2rem minmax(0, 1fr);
  gap: 0.65rem;
  padding: 1.15rem 0;
  border: 0;
  border-top: 1px solid var(--sofa-line);
  border-radius: 0;
  background: transparent;
}
.sofa-conversion-page .sofa-sales-journey > ol > li > span {
  width: auto;
  height: auto;
  place-items: start;
  border-radius: 0;
  color: var(--sofa-green);
  background: transparent;
  font-size: 0.9rem;
}
.sofa-conversion-page .sofa-sales-scope__content > ul > li { padding-block: 1rem; }
.sofa-conversion-page .sofa-sales-outcome { background: #07365e; }
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid article > span { display: none; }
.sofa-conversion-page .sofa-sales-method__grid { gap: 0 1.5rem; }
.sofa-conversion-page .sofa-sales-method__grid article {
  padding: 1.25rem 0;
  border: 0;
  border-top: 2px solid #57b878;
  border-radius: 0;
  box-shadow: none;
}
.sofa-conversion-page .sofa-sales-method__grid article > span {
  display: block;
  width: auto;
  height: auto;
  margin-bottom: 0.75rem;
  border-radius: 0;
  color: var(--sofa-green);
  background: transparent;
  font-size: 0.82rem;
}
.sofa-conversion-page .sofa-method-details > ol > li {
  border-radius: 0.2rem;
  box-shadow: none;
}
.sofa-conversion-page .sofa-sales-price__head {
  grid-template-columns: 2.4rem minmax(0, 1fr);
}
.sofa-conversion-page .sofa-models-conversion-grid {
  gap: 0;
  border-block: 1px solid var(--sofa-line);
}
.sofa-conversion-page .sofa-models-conversion-grid article {
  display: grid;
  grid-template-columns: 2.5rem minmax(0, 1fr);
  gap: 0.7rem;
  padding: 1.3rem 0;
  border: 0;
  border-bottom: 1px solid var(--sofa-line);
  background: transparent;
}
.sofa-conversion-page .sofa-models-conversion-grid article:last-child { border-bottom: 0; }
.sofa-conversion-page .sofa-models-conversion-grid article > span {
  color: var(--sofa-green);
  font-size: 0.82rem;
  font-weight: 900;
}
.sofa-conversion-page .sofa-models-conversion-grid article > div { padding: 0; }
.sofa-conversion-page .sofa-flow-faq .faq-list details { border-radius: 0.2rem; }
.sofa-conversion-page .sofa-sales-final { background: #07365e; }

@media (min-width: 40rem) {
  .sofa-conversion-page .sofa-models-conversion-grid article {
    padding: 1.3rem;
    border-right: 1px solid var(--sofa-line);
    border-bottom: 0;
  }
  .sofa-conversion-page .sofa-models-conversion-grid article:last-child { border-right: 0; }
}

@media (min-width: 64rem) {
  .sofa-conversion-page .sofa-sales-price__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
  }
  .sofa-conversion-page .sofa-sales-price__side { display: contents; }
  .sofa-conversion-page .sofa-sales-price__grid article { height: 100%; }
  .sofa-conversion-page .sofa-sales-payment { grid-column: 1 / -1; }
  .sofa-conversion-page .sofa-sales-payment > div {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0 1.5rem;
  }
  .sofa-conversion-page .sofa-sales-payment > div > span {
    grid-template-columns: minmax(0, 1fr);
    gap: 0.2rem;
  }
}

/* Shared typography contract for this HUB and the service HUBs that follow. */
.sofa-conversion-page {
  font-size: var(--service-type-body);
  line-height: var(--service-leading-body);
}
.sofa-conversion-page .sofa-sales-hero h1 {
  font-size: var(--service-type-display);
  font-weight: var(--service-weight-extra);
  line-height: var(--service-leading-display);
  letter-spacing: var(--service-tracking-display);
}
.sofa-conversion-page .sofa-flow-heading h2,
.sofa-conversion-page .sofa-sales-section-head h2,
.sofa-conversion-page .sofa-sales-scope__content h2,
.sofa-conversion-page .sofa-sales-outcome h2,
.sofa-conversion-page .sofa-sales-price__head h2,
.sofa-conversion-page .sofa-sales-final h2 {
  font-size: var(--service-type-section);
  font-weight: var(--service-weight-bold);
  line-height: var(--service-leading-heading);
  letter-spacing: var(--service-tracking-display);
}
.sofa-conversion-page .sofa-sales-assurance h2,
.sofa-conversion-page .sofa-sidebar-form h2,
.sofa-conversion-page .sofa-sales-price__grid h3 {
  font-size: var(--service-type-panel);
  font-weight: var(--service-weight-bold);
  line-height: var(--service-leading-heading);
  letter-spacing: -0.02em;
}
.sofa-conversion-page .sofa-situation-card h3,
.sofa-conversion-page .sofa-sales-journey h3,
.sofa-conversion-page .sofa-sales-scope__content h3,
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid h3,
.sofa-conversion-page .sofa-sales-method__grid h3,
.sofa-conversion-page .sofa-method-details h3,
.sofa-conversion-page .sofa-models-conversion-grid h3,
.sofa-conversion-page .sofa-sidebar-direct strong {
  font-size: var(--service-type-card);
  font-weight: var(--service-weight-bold);
  line-height: 1.3;
  letter-spacing: -0.01em;
}
.sofa-conversion-page .sofa-sales-hero .lead {
  font-size: var(--service-type-body-lg);
  line-height: var(--service-leading-body);
}
.sofa-conversion-page .sofa-sales-assurance p,
.sofa-conversion-page .sofa-flow-heading p,
.sofa-conversion-page .sofa-sales-section-head > p,
.sofa-conversion-page .sofa-sales-scope__content > p,
.sofa-conversion-page .sofa-sales-outcome__copy > p,
.sofa-conversion-page .sofa-sales-price__head p,
.sofa-conversion-page .sofa-sales-price__side article > p,
.sofa-conversion-page .sofa-sales-final p {
  font-size: var(--service-type-body);
  font-weight: var(--service-weight-regular);
  line-height: var(--service-leading-body);
}
.sofa-conversion-page .sofa-situation-card p,
.sofa-conversion-page .sofa-sales-journey li p,
.sofa-conversion-page .sofa-sales-scope__content li p,
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid p,
.sofa-conversion-page .sofa-sales-method__grid p,
.sofa-conversion-page .sofa-method-details p,
.sofa-conversion-page .sofa-models-conversion-grid p,
.sofa-conversion-page .sofa-expectations-note p,
.sofa-conversion-page .sofa-preparation-grid li,
.sofa-conversion-page .sofa-sales-price__side li,
.sofa-conversion-page .sofa-sales-payment > div > span,
.sofa-conversion-page .sofa-sidebar-form > p,
.sofa-conversion-page .sofa-sidebar-direct span,
.sofa-conversion-page .sofa-sales-scope figcaption,
.sofa-conversion-page .sofa-sales-outcome figcaption {
  font-size: var(--service-type-small);
  line-height: var(--service-leading-small);
}
.sofa-conversion-page .eyebrow,
.sofa-conversion-page .sofa-sales-kicker,
.sofa-conversion-page .sofa-sidebar-badge,
.sofa-conversion-page .sofa-situation-card__tag,
.sofa-conversion-page .sofa-sales-journey small,
.sofa-conversion-page .sofa-sales-hero__visual figcaption span {
  font-size: var(--service-type-label);
  font-weight: var(--service-weight-extra);
  line-height: 1.3;
  letter-spacing: var(--service-tracking-label);
}
.sofa-conversion-page .sofa-sales-assurance li,
.sofa-conversion-page .sofa-sales-hero__proof,
.sofa-conversion-page .sofa-situation-card a,
.sofa-conversion-page .sofa-sales-price__side li,
.sofa-conversion-page .sofa-sales-final li {
  font-size: var(--service-type-small);
  line-height: var(--service-leading-small);
  font-weight: var(--service-weight-bold);
}
.sofa-conversion-page .sofa-method-details summary,
.sofa-conversion-page .sofa-sales-final__actions > a:not(.btn) {
  font-size: var(--service-type-body);
  line-height: 1.4;
  font-weight: var(--service-weight-bold);
}
.sofa-conversion-page .sofa-sidebar-direct small {
  font-size: var(--service-type-label);
  line-height: var(--service-leading-small);
}
.sofa-conversion-page .sofa-situation-card__index,
.sofa-conversion-page .sofa-sales-journey > ol > li > span,
.sofa-conversion-page .sofa-sales-method__grid article > span,
.sofa-conversion-page .sofa-method-details > ol > li > span,
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid article > span,
.sofa-conversion-page .sofa-sales-price__factors > ol span {
  font-size: var(--service-type-label);
  font-weight: var(--service-weight-extra);
}

.sofa-conversion-page .sofa-sales-outcome .eyebrow {
  color: #9fe6e8;
}
.sofa-conversion-page .sofa-sidebar-form .field label,
.sofa-conversion-page .sofa-sidebar-form .field legend {
  font-size: var(--service-type-label);
  font-weight: var(--service-weight-bold);
}
.sofa-conversion-page .sofa-sidebar-form .field input:not([type='checkbox']),
.sofa-conversion-page .sofa-sidebar-form .field select {
  font-size: var(--service-type-small);
}
.sofa-conversion-page .sofa-sidebar-form .choice-group span {
  font-size: var(--service-type-small);
}
.sofa-conversion-page .sofa-sidebar-form .privacy-note {
  font-size: var(--service-type-legal);
  line-height: 1.45;
}
.sofa-conversion-page .btn,
.sofa-conversion-page .sofa-sales-hero__whatsapp {
  font-size: var(--service-type-body);
  font-weight: var(--service-weight-bold);
  line-height: 1.4;
}

/* Shared spacing contract: 4, 8, 12, 16, 24, 32, 48 and 64px. */
.sofa-conversion-page .sofa-sales-hero {
  padding-block: var(--service-space-sm) var(--service-section-space);
}
.sofa-conversion-page .sofa-sales-hero .breadcrumb {
  margin-bottom: var(--service-space-xl);
}
.sofa-conversion-page .sofa-sales-hero__grid {
  gap: var(--service-space-xl);
}
.sofa-conversion-page .sofa-sales-kicker {
  margin-bottom: var(--service-space-md);
  padding: var(--service-space-xs) var(--service-space-sm);
}
.sofa-conversion-page .sofa-sales-hero h1 {
  margin-bottom: var(--service-space-md);
}
.sofa-conversion-page .sofa-sales-hero__actions {
  gap: var(--service-space-sm);
  margin-top: var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-hero__proof {
  gap: var(--service-space-xs);
  margin-top: var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-opening,
.sofa-conversion-page .sofa-sales-final {
  padding-block: var(--service-section-space);
}
.sofa-conversion-page .sofa-sales-opening__grid {
  gap: var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-assurance {
  gap: var(--service-space-md);
  padding: var(--service-card-padding);
}
.sofa-conversion-page .sofa-sales-assurance h2,
.sofa-conversion-page .sofa-sidebar-form h2,
.sofa-conversion-page .sofa-sales-price__grid h3 {
  margin: var(--service-space-2xs) 0 var(--service-space-xs);
}
.sofa-conversion-page .sofa-sales-assurance ul {
  gap: var(--service-space-xs) var(--service-space-lg);
  margin-top: var(--service-space-md);
}
.sofa-conversion-page .sofa-sidebar-form,
.sofa-conversion-page .sofa-sidebar-direct {
  padding: var(--service-card-padding);
}
.sofa-conversion-page .sofa-sidebar-form > p {
  margin-bottom: var(--service-space-md);
}
.sofa-conversion-page .sofa-sidebar-form button[type='submit'] {
  margin-top: var(--service-space-sm);
}
.sofa-conversion-page .sofa-sidebar-direct {
  gap: var(--service-space-xs);
}
.sofa-conversion-page .sofa-sales-opening__content {
  gap: var(--service-block-space);
}
.sofa-conversion-page .sofa-flow-heading {
  margin-bottom: var(--service-space-lg);
}
.sofa-conversion-page .sofa-flow-heading h2,
.sofa-conversion-page .sofa-sales-section-head h2,
.sofa-conversion-page .sofa-sales-scope__content h2,
.sofa-conversion-page .sofa-sales-outcome h2,
.sofa-conversion-page .sofa-sales-price__head h2,
.sofa-conversion-page .sofa-sales-final h2 {
  margin: var(--service-space-2xs) 0 var(--service-space-sm);
}
.sofa-conversion-page .sofa-situations-grid,
.sofa-conversion-page .sofa-preparation-grid {
  gap: var(--service-space-md);
}
.sofa-conversion-page .sofa-situation-card,
.sofa-conversion-page .sofa-preparation-grid article {
  padding: var(--service-space-lg);
}
.sofa-conversion-page .sofa-situation-card__tag {
  margin-bottom: var(--service-space-md);
  padding: var(--service-space-2xs) var(--service-space-xs);
}
.sofa-conversion-page .sofa-situation-card h3,
.sofa-conversion-page .sofa-sales-method__grid h3,
.sofa-conversion-page .sofa-models-conversion-grid h3 {
  margin-bottom: var(--service-space-xs);
}
.sofa-conversion-page .sofa-situation-card p {
  margin-bottom: var(--service-space-md);
}
.sofa-conversion-page .sofa-sales-journey {
  padding: var(--service-card-padding);
}
.sofa-conversion-page .sofa-sales-journey > ol {
  gap: var(--service-space-sm);
  margin-bottom: var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-journey > ol > li {
  gap: var(--service-space-sm);
  padding: var(--service-space-md);
}
.sofa-conversion-page .sofa-sales-journey h3 {
  margin: var(--service-space-2xs) 0 var(--service-space-xs);
}
.sofa-conversion-page .sofa-sales-scope__grid,
.sofa-conversion-page .sofa-sales-outcome__grid {
  gap: var(--service-layout-gap);
}
.sofa-conversion-page .sofa-sales-scope__content > ul {
  gap: var(--service-space-sm);
  margin: var(--service-space-lg) 0;
}
.sofa-conversion-page .sofa-sales-scope__content > ul > li {
  gap: var(--service-space-sm);
  padding-block: var(--service-space-md);
}
.sofa-conversion-page .sofa-sales-scope__content h3,
.sofa-conversion-page .sofa-method-details h3 {
  margin-bottom: var(--service-space-2xs);
}
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid {
  margin-top: var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid article {
  padding: var(--service-space-md);
}
.sofa-conversion-page .sofa-sales-outcome .sofa-benefits-grid h3 {
  margin: var(--service-space-xs) 0;
}
.sofa-conversion-page .sofa-sales-section-head {
  margin-bottom: var(--service-space-xl);
}
.sofa-conversion-page .sofa-sales-method__grid {
  gap: 0 var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-method__grid article {
  padding-block: var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-method__grid article > span {
  margin-bottom: var(--service-space-sm);
}
.sofa-conversion-page .sofa-method-details {
  margin-top: var(--service-space-lg);
}
.sofa-conversion-page .sofa-method-details summary {
  gap: var(--service-space-sm);
  padding: var(--service-space-md) var(--service-space-lg);
}
.sofa-conversion-page .sofa-method-details > ol {
  gap: var(--service-space-sm);
  padding: 0 var(--service-space-lg) var(--service-space-lg);
}
.sofa-conversion-page .sofa-method-details > ol > li {
  gap: var(--service-space-sm);
  padding: var(--service-space-md);
}
.sofa-conversion-page .sofa-sales-price__head {
  gap: var(--service-space-md);
  margin-bottom: var(--service-space-lg);
  padding: var(--service-card-padding);
}
.sofa-conversion-page .sofa-sales-price__grid,
.sofa-conversion-page .sofa-sales-price__side {
  gap: var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-price__grid article {
  padding: var(--service-card-padding);
}
.sofa-conversion-page .sofa-sales-price__factors > ol {
  margin-bottom: var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-price__factors > ol li {
  gap: var(--service-space-sm);
  padding-block: var(--service-space-md);
}
.sofa-conversion-page .sofa-sales-price__side ul,
.sofa-conversion-page .sofa-preparation-grid ul {
  gap: var(--service-space-sm);
  margin-top: var(--service-space-md);
}
.sofa-conversion-page .sofa-sales-price__side li,
.sofa-conversion-page .sofa-preparation-grid li,
.sofa-conversion-page .sofa-sales-payment > div > span {
  gap: var(--service-space-xs);
}
.sofa-conversion-page .sofa-sales-payment > div {
  gap: var(--service-space-sm);
}
.sofa-conversion-page .sofa-sales-payment > div > span {
  padding-block: var(--service-space-sm);
}
.sofa-conversion-page .sofa-models-conversion-grid article {
  padding: var(--service-space-lg) 0;
}
.sofa-conversion-page .sofa-expectations-note {
  margin-top: var(--service-space-lg);
  padding: var(--service-space-md) var(--service-space-lg);
}
.sofa-conversion-page .sofa-sales-expectations .table-responsive,
.sofa-conversion-page .sofa-flow-faq .faq-list {
  margin-top: var(--service-space-lg);
}
.sofa-conversion-page .sofa-flow-faq .faq-list,
.sofa-conversion-page .sofa-sales-final__actions {
  gap: var(--service-space-sm);
}
.sofa-conversion-page .sofa-sales-final__inner {
  gap: var(--service-space-xl);
}
.sofa-conversion-page .sofa-sales-final ul {
  gap: var(--service-space-sm) var(--service-space-lg);
  margin-top: var(--service-space-md);
}

@media (min-width: 40rem) {
  .sofa-conversion-page .sofa-models-conversion-grid article {
    padding: var(--service-space-lg);
  }
}

@media (min-width: 64rem) {
  .sofa-conversion-page .sofa-sales-hero__grid {
    gap: var(--service-layout-gap);
  }
  .sofa-conversion-page .sofa-sales-opening__grid {
    gap: var(--service-space-xl) var(--service-layout-gap);
  }
  .sofa-conversion-page .sofa-sales-payment > div {
    gap: 0 var(--service-space-lg);
  }
}

/* Page-wide shared components follow the same typography and spacing system. */
.sofa-conversion-page .evidence-strip__copy strong {
  font-size: var(--service-type-card);
  font-weight: var(--service-weight-extra);
  line-height: 1.3;
}
.sofa-conversion-page .evidence-strip__copy small,
.sofa-conversion-page .evidence-strip__note {
  font-size: var(--service-type-small);
  line-height: var(--service-leading-small);
}
.sofa-conversion-page .table-wrap th,
.sofa-conversion-page .table-wrap td {
  font-size: var(--service-type-small);
  line-height: var(--service-leading-small);
}
.sofa-conversion-page .table-wrap thead th,
.sofa-conversion-page .table-wrap tbody th {
  font-size: var(--service-type-small);
  font-weight: var(--service-weight-bold);
}
.sofa-conversion-page .table-cell__label {
  font-size: var(--service-type-label);
  font-weight: var(--service-weight-extra);
}
.sofa-conversion-page .service-faq .faq-list summary {
  font-size: var(--service-type-body);
  font-weight: var(--service-weight-semibold);
  line-height: 1.45;
}
.sofa-conversion-page .service-faq .faq-list__index {
  font-size: var(--service-type-label);
  font-weight: var(--service-weight-extra);
}
.sofa-conversion-page .service-faq .faq-list__answer p {
  font-size: var(--service-type-small);
  line-height: var(--service-leading-body);
}
.sofa-conversion-page .editorial-crosslinks .section-heading h2,
.sofa-conversion-page .related-stage .section-heading h2,
.sofa-conversion-page .piece-selector header h2,
.sofa-conversion-page .published-local__head h2,
.sofa-conversion-page .cta-band h2 {
  font-size: var(--service-type-section);
  font-weight: var(--service-weight-bold);
  line-height: var(--service-leading-heading);
  letter-spacing: var(--service-tracking-display);
}
.sofa-conversion-page .editorial-crosslinks .section-heading p,
.sofa-conversion-page .related-stage .section-heading p,
.sofa-conversion-page .piece-selector header p,
.sofa-conversion-page .published-local__head p,
.sofa-conversion-page .cta-band p {
  font-size: var(--service-type-body);
  font-weight: var(--service-weight-regular);
  line-height: var(--service-leading-body);
}
.sofa-conversion-page .editorial-crosslinks__body > span {
  font-size: var(--service-type-label);
  font-weight: var(--service-weight-extra);
  line-height: 1.3;
  letter-spacing: var(--service-tracking-label);
}
.sofa-conversion-page .editorial-crosslinks__grid h3,
.sofa-conversion-page .editorial-crosslinks__conversion strong {
  font-size: var(--service-type-card);
  font-weight: var(--service-weight-bold);
  line-height: 1.3;
}
.sofa-conversion-page .editorial-crosslinks__grid p,
.sofa-conversion-page .editorial-crosslinks__conversion span,
.sofa-conversion-page .editorial-crosslinks__conversion .photo-choice > small {
  font-size: var(--service-type-small);
  line-height: var(--service-leading-small);
}
.sofa-conversion-page .related-links a,
.sofa-conversion-page .published-local__back a {
  font-size: var(--service-type-body);
  font-weight: var(--service-weight-bold);
  line-height: 1.4;
}
.sofa-conversion-page .piece-selector__grid strong,
.sofa-conversion-page .published-local__count small,
.sofa-conversion-page .published-local__copy small {
  font-size: var(--service-type-small);
  line-height: var(--service-leading-small);
}
.sofa-conversion-page .piece-selector__grid strong,
.sofa-conversion-page .published-local__copy strong {
  font-weight: var(--service-weight-bold);
}
.sofa-conversion-page .published-local__count strong {
  font-size: var(--service-type-card);
  font-weight: var(--service-weight-extra);
  line-height: 1.2;
}
.sofa-conversion-page .published-local__copy strong {
  font-size: var(--service-type-body);
  line-height: 1.35;
}
.sofa-conversion-page .editorial-crosslinks__head,
.sofa-conversion-page .related-stage .section-heading,
.sofa-conversion-page .piece-selector header,
.sofa-conversion-page .published-local__head {
  margin-bottom: var(--service-space-xl);
}
.sofa-conversion-page .editorial-crosslinks__grid {
  gap: var(--service-space-lg);
}
.sofa-conversion-page .editorial-crosslinks__body {
  padding: var(--service-space-lg);
}
.sofa-conversion-page .editorial-crosslinks__grid h3 {
  margin-block: var(--service-space-sm);
}
.sofa-conversion-page .editorial-crosslinks__grid p {
  margin-bottom: var(--service-space-lg);
}
.sofa-conversion-page .editorial-crosslinks__conversion {
  gap: var(--service-space-lg);
  margin-top: var(--service-space-lg);
  padding: var(--service-space-lg);
}
@media (min-width: 64rem) {
  :is(.armchair-conversion-page, .blind-conversion-page) .editorial-crosslinks__grid--single {
    grid-template-columns: minmax(0, 1fr);
  }
  :is(.armchair-conversion-page, .blind-conversion-page) .editorial-crosslinks__grid--single article {
    grid-template-columns: minmax(20rem, 0.9fr) minmax(0, 1.1fr);
    grid-template-rows: minmax(0, 1fr);
  }
  :is(.armchair-conversion-page, .blind-conversion-page) .editorial-crosslinks__grid--single .editorial-crosslinks__media {
    height: 100%;
    aspect-ratio: auto;
  }
}
.sofa-conversion-page .related-links,
.sofa-conversion-page .piece-selector__grid,
.sofa-conversion-page .published-local__grid {
  gap: var(--service-space-sm);
}
.sofa-conversion-page .related-links a,
.sofa-conversion-page .published-local__card {
  padding: var(--service-space-md);
}
.sofa-conversion-page .piece-selector {
  padding-block: var(--service-section-space);
}
.sofa-conversion-page .published-local__head {
  gap: var(--service-space-lg);
}
.sofa-conversion-page .published-local__count,
.sofa-conversion-page .published-local__card {
  gap: var(--service-space-sm);
}
.sofa-conversion-page .published-local__back {
  margin-top: var(--service-space-lg);
}
.sofa-conversion-page .cta-band {
  padding-block: var(--service-section-space);
}

/* Mattress hub refinements: disclosure, mobile density and trust presentation. */
.mattress-conversion-page .sofa-sales-hero h1 {
  font-size: clamp(2.1rem, 9.6vw, 3.7rem);
}
.mattress-conversion-page .sofa-sales-hero h1 > span {
  display: block;
  white-space: nowrap;
}
.sofa-main-page .sofa-illustrative-badge,
.mattress-conversion-page .sofa-illustrative-badge,
.curtain-conversion-page .sofa-illustrative-badge,
.mattress-conversion-page .editorial-crosslinks__media::after {
  position: absolute;
  z-index: 3;
  top: 0.75rem;
  right: 0.75rem;
  display: inline-flex;
  padding: 0.38rem 0.58rem;
  border: 1px solid rgb(255 255 255 / 42%);
  border-radius: 999px;
  color: #fff;
  background: rgb(4 27 51 / 82%);
  box-shadow: 0 0.4rem 1rem rgb(4 27 51 / 18%);
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  backdrop-filter: blur(0.25rem);
}
.sofa-main-page .sofa-illustrative-badge--hero,
.mattress-conversion-page .sofa-illustrative-badge--hero {
  top: auto;
  bottom: 0.75rem;
}
.mattress-conversion-page .editorial-crosslinks__media {
  position: relative;
}
.mattress-conversion-page .editorial-crosslinks__media::after {
  content: 'Imagem ilustrativa';
}
.mattress-conversion-page .piece-selector__all {
  display: none;
}
.mattress-conversion-page .footer-certifications__logos svg {
  overflow: hidden;
}
.mattress-conversion-page .sticky-mobile-cta {
  transition: opacity 180ms ease, visibility 180ms ease, transform 180ms ease;
}
.mattress-conversion-page .sticky-mobile-cta:not([data-hero-visible='false']),
.mattress-conversion-page .sticky-mobile-cta[data-hero-visible='true'] {
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translateY(0.65rem);
}

@media (max-width: 39.99rem) {
  .mattress-conversion-page .piece-selector--compact-mobile .piece-selector__grid > a:nth-child(n + 7) {
    display: none;
  }
  .mattress-conversion-page .piece-selector--compact-mobile .piece-selector__all {
    display: inline-flex;
    width: 100%;
    margin-top: var(--service-space-lg);
    justify-content: center;
  }
}

@media (min-width: 75rem) {
  body:is(.chair-conversion-page, .blind-conversion-page) .sofa-sales-hero__copy {
    width: 54%;
    max-width: 41rem;
  }
  body:is(.chair-conversion-page, .blind-conversion-page) .sofa-sales-hero h1 {
    max-width: 40rem;
    font-size: 3.8rem;
  }
  body.curtain-conversion-page .sofa-sales-hero__copy {
    width: 58%;
    max-width: 44rem;
  }
  body.curtain-conversion-page .sofa-sales-hero h1 {
    max-width: 20ch;
    font-size: 3.8rem;
    line-height: 1.02;
  }
}

@media (min-width: 64rem) {
  .mattress-conversion-page .sofa-sidebar-form {
    padding: var(--service-space-md);
  }
  .mattress-conversion-page .sofa-sidebar-form h2 {
    font-size: 1.5rem;
    line-height: 1.1;
  }
  .mattress-conversion-page .sofa-sidebar-form > p {
    margin-bottom: var(--service-space-sm);
  }
  .mattress-conversion-page .sofa-sidebar-form .form-grid {
    gap: 0.65rem;
  }
  .mattress-conversion-page .sofa-sidebar-form .field {
    gap: 0.2rem;
  }
  .mattress-conversion-page .sofa-sidebar-form .field input:not([type='checkbox']),
  .mattress-conversion-page .sofa-sidebar-form .field select,
  .mattress-conversion-page .sofa-sidebar-form .choice-group span {
    min-height: 2.6rem;
    padding-block: 0.5rem;
  }
  .mattress-conversion-page .sofa-sidebar-form .form-actions {
    gap: 0.6rem;
    margin-top: 0.75rem;
  }
  .mattress-conversion-page .sofa-sidebar-form button[type='submit'] {
    margin-top: 0;
  }
  .mattress-conversion-page .sofa-sidebar-direct {
    gap: var(--service-space-sm);
    padding: var(--service-space-md);
  }
  .mattress-conversion-page .sofa-sidebar-direct > span,
  .mattress-conversion-page .sofa-sidebar-direct > small {
    display: none;
  }
  .mattress-conversion-page .sofa-sidebar-direct .btn {
    margin-top: 0;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications {
    padding-block: clamp(3rem, 5vw, 4.5rem);
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__art {
    display: none;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__responsive {
    display: block;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__head {
    max-width: 46rem;
    margin-bottom: 2rem;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__head .eyebrow {
    margin-bottom: 0.55rem;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__head h2 {
    max-width: 22ch;
    margin-bottom: 0.65rem;
    font-size: clamp(2rem, 3vw, 2.75rem);
    line-height: 1.08;
    text-wrap: balance;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__head p {
    margin: 0;
    color: var(--text-muted);
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__grid {
    display: grid;
    margin: 0;
    padding: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
    list-style: none;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__item {
    display: grid;
    min-width: 0;
    min-height: 11rem;
    padding: 1.15rem;
    grid-template-rows: 5rem auto;
    align-content: start;
    gap: 0.9rem;
    border: 1px solid var(--border);
    border-radius: 0.75rem;
    background: #fff;
    box-shadow: 0 0.7rem 1.8rem rgb(6 44 83 / 7%);
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__logos {
    display: flex;
    min-width: 0;
    height: 5rem;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    overflow: hidden;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__logos svg {
    display: block;
    width: 100%;
    height: 5rem;
    min-width: 0;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__logos:has(svg + svg) svg {
    width: calc(50% - 0.2rem);
    flex: 0 1 calc(50% - 0.2rem);
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__item > span:last-child {
    display: grid;
    align-content: start;
    gap: 0.2rem;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__item strong {
    color: var(--primary-deep);
    font-size: 0.92rem;
    line-height: 1.25;
  }
  :is(.mattress-conversion-page, .blind-conversion-page) .footer-certifications__item small {
    color: var(--text-muted);
    font-size: 0.77rem;
    line-height: 1.4;
  }
}

@media (min-width: 64rem) and (max-height: 58rem) {
  .mattress-conversion-page .sofa-sales-opening .sofa-sidebar-sticky {
    position: static;
    top: auto;
    max-height: none;
    overflow: visible;
    overscroll-behavior: auto;
  }
}

/* Keep service-specific hero titles on their intended lines. */
:is(.chair-conversion-page, .blind-conversion-page) .sofa-sales-hero h1 {
  max-width: none;
  font-size: clamp(2rem, 8.2vw, 3.8rem);
}
:is(.chair-conversion-page, .blind-conversion-page) .sofa-sales-hero h1 > span {
  display: block;
  white-space: nowrap;
}
.armchair-conversion-page .sofa-sales-hero h1 {
  max-width: none;
  font-size: clamp(1.95rem, 8.7vw, 3.35rem);
}
.armchair-conversion-page .sofa-sales-hero h1 > span {
  display: block;
  white-space: nowrap;
}

/* Rug hub: keep the long-form sales page easier to scan without changing shared service pages. */
.rug-conversion-page .sofa-situations__cta {
  width: fit-content;
  margin-top: 1.25rem;
}
.rug-conversion-page .sofa-sales-hero h1 > span {
  display: block;
}

@media (min-width: 75rem) {
  body.rug-conversion-page .sofa-sales-hero__copy {
    width: 56%;
    max-width: 42rem;
  }
  body.rug-conversion-page .sofa-sales-hero h1 {
    max-width: none;
    font-size: 3.65rem;
    line-height: 1.02;
  }
  body.rug-conversion-page .sofa-sales-hero h1 > span {
    white-space: nowrap;
  }
}

@media (max-width: 39.99rem) {
  .rug-conversion-page .sofa-sales-opening__grid {
    grid-template-areas: "assurance" "content" "form";
  }
  .rug-conversion-page .sofa-situations__cta {
    width: 100%;
  }
  .rug-conversion-page .cookie-banner {
    right: 0.5rem;
    bottom: 0.5rem;
    left: 0.5rem;
    padding: 0.65rem;
    border-radius: 0.75rem;
  }
  .rug-conversion-page .cookie-banner__copy h2 {
    margin: 0;
    font-size: 0.9rem;
  }
  .rug-conversion-page .cookie-banner__copy p {
    margin: 0.1rem 0 0.45rem;
    font-size: 0.72rem;
  }
  .rug-conversion-page .cookie-actions {
    grid-template-columns: 1.15fr 0.85fr auto;
    gap: 0.25rem;
    margin-top: 0;
  }
  .rug-conversion-page .cookie-actions .btn,
  .rug-conversion-page .cookie-customize {
    min-height: 2.75rem;
    padding-inline: 0.45rem;
    font-size: 0.72rem;
  }
  .rug-conversion-page .cookie-customize {
    grid-column: auto;
  }
}

/* Window-covering hubs: keep supporting copy readable and the first mobile visit unobstructed. */
.blind-conversion-page .sofa-models-conversion-grid article:last-child {
  background: #f2f8f5;
}

@media (min-width: 40rem) {
  .blind-conversion-page .sofa-models-conversion-grid article:last-child {
    grid-column: 1 / -1;
    border-top: 1px solid var(--sofa-line);
  }
  .blind-conversion-page .sofa-models-conversion-grid article:last-child p {
    max-width: 78ch;
  }
}

.curtain-conversion-page .sofa-limit-list li strong,
.curtain-conversion-page .sofa-limit-list li span,
.blind-conversion-page .sofa-limit-list li strong,
.blind-conversion-page .sofa-limit-list li span {
  font-size: var(--service-type-small);
}

@media (max-width: 39.99rem) {
  .curtain-conversion-page .cookie-banner,
  .blind-conversion-page .cookie-banner {
    right: 0.5rem;
    bottom: 0.5rem;
    left: 0.5rem;
    padding: 0.65rem;
    border-radius: 0.75rem;
  }
  .curtain-conversion-page .cookie-banner__copy h2,
  .blind-conversion-page .cookie-banner__copy h2 {
    margin: 0;
    font-size: 0.9rem;
  }
  .curtain-conversion-page .cookie-banner__copy p,
  .blind-conversion-page .cookie-banner__copy p {
    margin: 0.1rem 0 0.45rem;
    font-size: 0.72rem;
  }
  .curtain-conversion-page .cookie-actions,
  .blind-conversion-page .cookie-actions {
    grid-template-columns: 1.15fr 0.85fr auto;
    gap: 0.25rem;
    margin-top: 0;
  }
  .curtain-conversion-page .cookie-actions .btn,
  .curtain-conversion-page .cookie-customize,
  .blind-conversion-page .cookie-actions .btn,
  .blind-conversion-page .cookie-customize {
    min-height: 2.75rem;
    padding-inline: 0.45rem;
    font-size: 0.72rem;
  }
  .curtain-conversion-page .cookie-customize,
  .blind-conversion-page .cookie-customize {
    grid-column: auto;
  }
}

/* Curtain hub: shorten the commercial path and create one clear closing action. */
.curtain-conversion-page .sofa-situations__cta {
  width: fit-content;
  margin-top: 1.25rem;
}
.curtain-conversion-page .curtain-journey-stage {
  background: var(--sofa-sky);
}
.curtain-conversion-page .curtain-journey-stage .sofa-sales-journey {
  max-width: 70rem;
  margin-inline: auto;
}
.curtain-conversion-page .related-stage {
  --primary: var(--service-navy);
  --primary-hover: #041d37;
  --primary-deep: var(--service-navy);
  --primary-dark: var(--service-navy);
  --accent: var(--service-navy);
  --text: #334155;
  --text-muted: #56616d;
  --border: #dce2e7;
  --border-strong: #c6d0d8;
  --focus-color: var(--service-navy);
  color: var(--text);
  background-color: #f5f7f7;
  background-image: none;
}
.curtain-conversion-page .related-stage .section-heading h2 {
  color: var(--service-navy);
}
.curtain-conversion-page .related-stage .eyebrow {
  color: #08783b;
}
.curtain-conversion-page .sofa-sales-final {
  color: #334155;
  background: #eef5f2;
}
.curtain-conversion-page .sofa-sales-final .eyebrow,
.curtain-conversion-page .sofa-sales-final h2,
.curtain-conversion-page .sofa-sales-final__actions > a:not(.btn) {
  color: var(--service-navy);
}
.curtain-conversion-page .sofa-sales-final p {
  color: #4f6472;
}
.curtain-conversion-page .sofa-sales-final li {
  color: #314959;
}
.curtain-conversion-page .sofa-sales-final li svg,
.curtain-conversion-page .sofa-sales-final__actions > a svg {
  color: #0b8b48;
}

@media (max-width: 39.99rem) {
  .curtain-conversion-page .sofa-situations__cta {
    width: 100%;
  }
}

@media (min-width: 64rem) {
  .curtain-conversion-page .curtain-journey-stage .sofa-sales-journey > ol {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
