/* Shared public-site palette and composition, derived from the taupe logo. */
.replica-body {
  --brand-ink: #352f2a;
  --brand-paper: #f7f5ef;
  --brand-accent: #75675c;
  --brand-dark: #51453c;
  --brand-line: #dcd4cb;
  --brand-on-dark: #fffdf7;
  --brand-muted-light: #e7dfd6;
  --brand-overlay: #352f2ab8;
  --section-space: clamp(3.5rem, 6vw, 6rem);
  --column-space: clamp(2rem, 5vw, 5rem);
  color: var(--brand-ink);
}

.replica-body :is(.header_bottom, .mobile_menu, .language-picker) {
  background: var(--brand-paper) !important;
}

.replica-body :is(.footer_top, .footer_bottom_holder) {
  background: var(--brand-dark) !important;
}

.replica-body :is(.footer_top, .footer_bottom) :is(p, a, span) { color: var(--brand-on-dark) !important; }
.replica-body :focus-visible { outline-color: var(--brand-accent); }
.replica-body :is(.seo-links a, .faq-list, .faq-list details, .portfolio_detail) { border-color: var(--brand-line); }
.replica-body .contact-direct-actions a:last-child { color: var(--brand-accent) !important; }

.replica-body[data-inner-page] :is(.content, .content_inner, .full_width, .container, .title, .seo-section) {
  background-color: var(--brand-paper) !important;
}

.replica-body[data-inner-page] :is(h1, h2, .portfolio_single_text_title) {
  font-family: var(--brand-heading) !important;
  font-weight: 400 !important;
  line-height: 1.15 !important;
  text-wrap: balance;
}

.replica-body[data-inner-page] h1,
.replica-body[data-inner-page] .portfolio_single_text_title { font-size: clamp(2.375rem, 4vw, 3.75rem) !important; }
.replica-body[data-inner-page] h2 { font-size: clamp(2rem, 3.3vw, 3rem) !important; }
.replica-body[data-inner-page] h3 {
  font: 400 clamp(1.5rem, 2.2vw, 1.875rem)/1.3 var(--brand-heading) !important;
}
.replica-body[data-inner-page] :is(h1, h2, h3) { color: var(--brand-ink); }
.replica-body[data-inner-page] .content_inner [style*="background-color: #f5f0ee"] { background-color: transparent !important; }
.replica-body[data-inner-page="over-ons"] .elementor-element-e353453 > .elementor-widget-container {
  padding-inline: 0;
  padding-inline-start: clamp(.75rem, 1.5vw, 1.25rem);
}
.replica-body[data-inner-page="over-ons"] .elementor-element-e040049 > .elementor-widget-wrap {
  padding-block: 0;
}

.replica-body[data-inner-page] :is(p, [data-lead-copy]) {
  font: 400 var(--body-copy-size)/1.75 var(--brand-body) !important;
  letter-spacing: 0 !important;
  text-wrap: pretty;
}

.replica-body[data-inner-page] :is(.elementor-widget-text-editor, .portfolio_single_text_holder) > :is(p, h3),
.replica-body[data-inner-page] .elementor-widget-text-editor > .elementor-widget-container > p {
  max-width: 65ch;
}

.replica-body[data-inner-page] [data-fences-page].e-con {
  padding-block: var(--section-space);
  gap: var(--section-space);
}

.replica-body[data-inner-page] [data-fences-page] > :is(.elementor-element-21e8eae, .elementor-element-ef7daed, .elementor-element-84b38ee) {
  gap: var(--column-space);
}

.replica-body[data-inner-page] :is(.elementor-element-55b7260, .elementor-element-e499949) {
  background: var(--brand-dark) !important;
  color: var(--brand-on-dark);
  border-radius: 0;
}

.replica-body[data-inner-page] :is(.elementor-element-55b7260, .elementor-element-e499949) :is(h1,h2,h3,h4,p,span,em,strong,a):not(.portfolio_description *) {
  color: var(--brand-on-dark) !important;
}

.replica-body[data-inner-page] .portfolio_description {
  background: var(--brand-paper) !important;
  color: var(--brand-ink);
  padding: 20px;
}

.replica-body[data-inner-page] .portfolio_description :is(h3, h6, a, span) {
  color: var(--brand-ink) !important;
}

.replica-body[data-inner-page] .portfolio_description .portfolio_title {
  margin: 0 0 8px;
  overflow-wrap: anywhere;
}

.replica-body[data-inner-page] :is(.qbutton, .qodef-qi-button, .elementor-button),
.replica-body .contact-direct-actions a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 20px !important;
  min-height: 52px;
  padding: 14px 26px !important;
  border: 1px solid var(--brand-accent) !important;
  border-radius: 0 !important;
  background: var(--brand-accent) !important;
  color: var(--brand-on-dark) !important;
  font: 500 1rem/1.5 var(--brand-body) !important;
  letter-spacing: .025em !important;
  text-transform: none !important;
  box-shadow: none;
  transition: background-color .2s;
}

.replica-body[data-inner-page] :is(.qbutton, .qodef-qi-button, .elementor-button) :is(.elementor-button-text, .qodef-m-text) {
  color: inherit !important;
  font: inherit !important;
  letter-spacing: inherit !important;
}

.replica-body[data-inner-page] :is(.qbutton, .qodef-qi-button, .elementor-button):hover,
.replica-body .contact-direct-actions a:hover { background: var(--brand-dark) !important; }
.replica-body .contact-direct-actions a:last-child { background: transparent !important; }
.replica-body .contact-direct-actions a:last-child:hover { background: var(--brand-line) !important; }
.replica-body[data-inner-page] .qode-underlined-button-span { display: none; }

.replica-body[data-inner-page] :is(.elementor-element-55b7260, .elementor-element-e499949) :is(.qbutton, .qodef-qi-button, .elementor-button) {
  border-color: var(--brand-muted-light) !important;
}

.replica-body[data-inner-page="poorten"] :is(.poorten-box, .poorten-header, .poorten-content) {
  background: #fffdf9;
  border-radius: 0;
  box-shadow: none;
}

.replica-body[data-inner-page="poorten"] .info-card {
  background: var(--brand-paper);
  border: 1px solid var(--brand-line);
  border-radius: 0;
  box-shadow: none;
}

.replica-body[data-inner-page] :is(.poorten-header, .info-card) :is(h2,h3,p) { color: var(--brand-ink); }
.replica-body[data-inner-page] .seo-section { padding-block: var(--section-space); }
.replica-body[data-inner-page] .seo-inner { max-width: 76rem; }
.replica-body[data-inner-page] .seo-links { margin-block: 24px var(--section-space); }
.replica-body[data-inner-page] .wp-caption-text { font: 400 1rem/1.5 var(--brand-body); }

.replica-body[data-inner-page] .swiper-pagination-bullet {
  background: var(--brand-accent);
  opacity: .45;
}
.replica-body[data-inner-page] .swiper-pagination-bullet-active { opacity: 1; }

.replica-body[data-inner-page="bijzondere-realisaties"] .elementor-element-316dfd4 .elementor-widget-image > .elementor-widget-container {
  padding: 0;
  box-shadow: none;
}

.replica-body[data-inner-page="contact"] .elementor-widget-text-editor h2 {
  margin-block: 32px 16px;
}
.replica-body[data-inner-page="contact"] .elementor-widget-text-editor h2:first-child { margin-top: 0; }

@media (max-width: 767px) {
  .replica-body[data-inner-page="over-ons"] .default_template_holder .elementor-element-ee05dbd {
    padding-top: 0 !important;
  }
  .replica-body[data-inner-page="over-ons"] .elementor-element-752b176 > .elementor-container {
    row-gap: 28px;
  }
  .replica-body[data-inner-page="over-ons"] .elementor-element-d0bd76d > .elementor-widget-container {
    padding-inline: 0;
  }
  .replica-body[data-inner-page="over-ons"] .elementor-accordion :is(.elementor-tab-title, .elementor-tab-content) {
    padding-inline: 0;
    border-color: var(--brand-line);
  }
  .replica-body[data-inner-page] .footer_bottom p {
    font-size: 16px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .replica-body :is(.qbutton, .qodef-qi-button, .elementor-button, .contact-direct-actions a) { transition: none; }
}
