:root {
  --bg: #f7f4ef;
  --surface: #ffffff;
  --surface-alt: #f1ebe2;
  --line: #e2d9cd;
  --text: #251f1a;
  --muted: #6f665d;
  --accent: #9d6a3f;
  --accent-dark: #7f532f;
  --dark: #191412;
  --success-bg: #ecf9ef;
  --success-border: #b7e4c2;
  --danger-bg: #fff0ed;
  --danger-border: #e8b9b2;
  --radius: 22px;
  --shadow: 0 18px 44px rgba(22, 18, 15, 0.08);
  --container: min(1200px, calc(100% - 32px));
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--text);
  background: var(--bg);
  line-height: 1.7;
}
a { color: var(--accent); text-decoration: none; }
a:hover { color: var(--accent-dark); }
img { max-width: 100%; height: auto; display: block; }
.container { width: var(--container); margin: 0 auto; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(247, 244, 239, 0.92);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(226, 217, 205, 0.95);
}
.header-inner {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 24px;
  min-height: 90px;
}
.site-branding { display: flex; align-items: center; gap: 14px; }
.site-title {
  display: inline-block;
  font-size: 1.45rem;
  font-weight: 800;
  color: var(--dark);
}
.site-tagline {
  margin: 2px 0 0;
  color: var(--muted);
  font-size: 0.95rem;
}
.primary-navigation ul,
.site-footer ul.menu {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 22px;
  margin: 0;
  padding: 0;
}
.primary-navigation ul { flex-wrap: nowrap; justify-content: center; }
.primary-navigation li { white-space: nowrap; }
.primary-navigation { min-width: 0; }
.primary-navigation a,
.site-footer ul.menu a {
  font-weight: 700;
  color: var(--text);
}
.header-cta,
.btn,
button,
input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  font-weight: 700;
  padding: 14px 22px;
  transition: 0.25s ease;
}
.header-cta,
.btn-primary,
button,
input[type="submit"] {
  background: var(--accent);
  color: #fff;
  box-shadow: var(--shadow);
}
.header-cta:hover,
.btn-primary:hover,
button:hover,
input[type="submit"]:hover {
  background: var(--accent-dark);
  color: #fff;
}
.btn-secondary {
  background: transparent;
  border: 1px solid var(--line);
  color: var(--text);
}
.mobile-menu-toggle {
  display: none;
  background: transparent;
  padding: 10px;
  box-shadow: none;
}
.mobile-menu-toggle span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--dark);
  margin: 5px 0;
}

.hero-section {
  background:
    linear-gradient(90deg, rgba(247, 244, 239, 0.98) 0%, rgba(247, 244, 239, 0.88) 52%, rgba(247, 244, 239, 0.55) 100%),
    url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat;
  padding: 70px 0 60px;
}
.hero-grid,
.two-column-layout {
  display: grid;
  grid-template-columns: 1.08fr 0.92fr;
  gap: 30px;
  align-items: start;
}
.eyebrow,
.section-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  padding: 8px 14px;
  border-radius: 10px;
  background: rgba(255,255,255,0.8);
  border: 1px solid rgba(226, 217, 205, 0.95);
  color: var(--accent);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}
.section-label-light {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.14);
  color: #e7d2b9;
}
.hero-content h1,
.section h2,
.page-hero-small h1,
.content-card h1 {
  margin: 0 0 16px;
  line-height: 1.08;
  color: var(--dark);
}
.hero-content h1 { font-size: clamp(2.5rem, 5vw, 4.7rem); max-width: 760px; }
.hero-content p,
.section-text,
.page-hero-small p { color: var(--muted); font-size: 1.04rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 24px; }
.hero-facts {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-top: 28px;
}
.hero-facts div,
.stat-card,
.info-card,
.project-card,
.quote-card,
.content-card,
.hero-card,
.cta-panel,
.soft-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}
.hero-facts div { padding: 18px; }
.hero-facts strong,
.stat-card strong { display: block; font-size: 1.2rem; color: var(--dark); margin-bottom: 6px; }
.hero-facts span,
.stat-card span { color: var(--muted); font-size: 0.94rem; }
.hero-card,
.content-card,
.info-card,
.project-card,
.quote-card { padding: 26px; }
.content-card-wide { max-width: 980px; }
.section { padding: 72px 0; }
.section-muted { background: linear-gradient(180deg, rgba(255,255,255,0.55), rgba(241,235,226,0.55)); }
.section-dark { background: var(--dark); color: #fff; }
.section-dark h2,
.section-dark p,
.section-dark strong { color: #fff; }
.section-heading-row {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
}
.text-link { font-weight: 700; }
.card-grid { display: grid; gap: 24px; }
.card-grid-3 { grid-template-columns: repeat(3, 1fr); }
.project-grid,
.archive-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.service-card { position: relative; overflow: hidden; }
.service-icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  background: var(--surface-alt);
  color: var(--accent);
  font-size: 1.8rem;
  margin-bottom: 18px;
}
.project-card { padding: 0; overflow: hidden; }
.project-image-link img,
.thumb-wrap img,
.single-featured-image img {
  width: 100%;
  height: 280px;
  object-fit: cover;
}
.project-placeholder {
  height: 280px;
  background: linear-gradient(135deg, #e8dfd3, #d8c6b3);
}
.project-card-body { padding: 22px; }
.project-tax { color: var(--accent); font-size: 0.86rem; font-weight: 700; margin-bottom: 10px; }
.project-tax-single { margin-bottom: 12px; }
.page-hero-small { margin-bottom: 28px; }
.quote-card { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.12); }
.cta-panel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
  padding: 32px;
}
.feature-checks {
  margin: 18px 0 0;
  padding-left: 18px;
}
.feature-checks li { margin-bottom: 8px; }
.stats-panel { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.stat-card { padding: 24px; }
.form-row { margin-bottom: 14px; }
.form-row.two-cols { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
label { display: block; margin-bottom: 7px; font-weight: 700; color: var(--dark); }
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
select,
textarea,
input[type="file"] {
  width: 100%;
  border-radius: 14px;
  border: 1px solid #daccbf;
  padding: 14px 15px;
  background: #fff;
  color: var(--text);
  font: inherit;
}
textarea { min-height: 150px; resize: vertical; }
.field-note { display: block; margin-top: 8px; color: var(--muted); font-size: 0.88rem; }
.notice {
  padding: 14px 16px;
  border-radius: 14px;
  margin-bottom: 16px;
}
.notice-success { background: var(--success-bg); border: 1px solid var(--success-border); color: #21613b; }
.notice-error { background: var(--danger-bg); border: 1px solid var(--danger-border); color: #8c3021; }
.filter-pills {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.filter-pill {
  border: 1px solid var(--line);
  background: #fff;
  padding: 10px 16px;
  border-radius: 10px;
  cursor: pointer;
  font-weight: 700;
}
.filter-pill.is-active {
  background: var(--accent);
  border-color: var(--accent);
  color: #fff;
}
.calculator-result {
  margin-top: 18px;
  padding: 18px;
  border-radius: 16px;
  background: var(--surface-alt);
}
.calculator-result strong,
.calculator-result span,
.calculator-result small { display: block; }
.calculator-result span { font-size: 1.5rem; font-weight: 800; color: var(--dark); margin: 6px 0; }
.contact-list p { margin: 0 0 8px; }

.site-footer {
  background: #191412;
  color: #f2e7db;
  margin-top: 64px;
}
.footer-top {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 28px;
  padding: 48px 0 30px;
}
.site-footer h3 { color: #fff; }
.site-footer a,
.site-footer .footer-list { color: #ecd8c1; }
.site-footer ul.menu,
.site-footer ul.footer-menu {
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 8px 18px;
}
.site-footer ul.menu a,
.site-footer ul.footer-menu a {
  display: inline-block;
  padding: 4px 0;
  color: #f2e7db;
  text-decoration: none;
  opacity: 1;
}
.site-footer ul.menu a:hover,
.site-footer ul.menu a:focus-visible,
.site-footer ul.footer-menu a:hover,
.site-footer ul.footer-menu a:focus-visible {
  color: #ffffff;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.footer-list { list-style: none; margin: 0; padding: 0; }
.footer-list li { margin-bottom: 8px; }
.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.12);
  padding: 18px 0 26px;
  font-size: 0.92rem;
  color: #cdb9a6;
}

@media (max-width: 1100px) {
  .hero-grid,
  .two-column-layout,
  .card-grid-3,
  .project-grid,
  .archive-grid,
  .stats-panel,
  .footer-top,
  .hero-facts {
    grid-template-columns: repeat(2, 1fr);
  }
  .header-inner {
    grid-template-columns: auto auto auto;
  }
}

@media (max-width: 820px) {
  .header-inner {
    grid-template-columns: 1fr auto auto;
    min-height: 78px;
  }
  .mobile-menu-toggle { display: inline-flex; }
  .header-cta { display: none; }
  .primary-navigation { position: fixed; top: 0; right: 0; height: 100vh; width: min(360px, 88vw); background: var(--surface); padding: 96px 24px 24px; box-shadow: -24px 0 60px rgba(0,0,0,.18); transform: translateX(110%); transition: transform .25s ease; overflow-y: auto; }
  .primary-navigation.is-open { transform: translateX(0); }
  .primary-navigation ul { flex-direction: column; align-items: stretch; gap: 12px; }
  .primary-navigation a { display: block; padding: 12px 14px; border: 1px solid var(--line); border-radius: 14px; background: #fff; }
  body.mobile-menu-open { overflow: hidden; }
  .primary-navigation {
    position: absolute;
    left: 16px;
    right: 16px;
    top: calc(100% + 10px);
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 20px;
    box-shadow: var(--shadow);
    padding: 18px;
    display: none;
  }
  .primary-navigation.is-open { display: block; }
  .primary-navigation ul,
  .site-footer ul.menu {
    flex-direction: column;
    align-items: flex-start;
  }
  .hero-grid,
  .two-column-layout,
  .card-grid-3,
  .project-grid,
  .archive-grid,
  .stats-panel,
  .footer-top,
  .hero-facts,
  .form-row.two-cols {
    grid-template-columns: 1fr;
  }
  .section-heading-row,
  .cta-panel {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 520px) {
  .hero-section { padding-top: 42px; }
  .hero-content h1 { font-size: 2.15rem; }
  .hero-card,
  .content-card,
  .info-card,
  .quote-card { padding: 20px; }
  .site-title { font-size: 1.2rem; }
  .site-tagline { font-size: 0.85rem; }
}

.card-grid-4 { grid-template-columns: repeat(4, 1fr); }
.card-grid-2 { grid-template-columns: repeat(2, 1fr); }
.no-margin { margin: 0; }
.hero-section-premium {
  background:
    radial-gradient(circle at top right, rgba(157,106,63,0.18), transparent 34%),
    linear-gradient(90deg, rgba(247,244,239,0.98) 0%, rgba(247,244,239,0.90) 52%, rgba(247,244,239,0.60) 100%),
    url('https://images.unsplash.com/photo-1484154218962-a197022b5858?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat;
}
.about-premium-layout { align-items: center; }
.premium-info-panel { display: grid; gap: 18px; }
.feature-panel-card p { margin: 0; }
.service-card-rich,
.service-showcase-card { display: flex; flex-direction: column; }
.service-card-kicker {
  display: inline-flex;
  align-self: flex-start;
  padding: 6px 12px;
  border-radius: 10px;
  background: var(--surface-alt);
  color: var(--accent);
  font-size: 0.8rem;
  font-weight: 800;
  margin-bottom: 14px;
}
.service-mini-list {
  margin: 0 0 18px;
  padding-left: 18px;
  color: var(--muted);
}
.service-mini-list li { margin-bottom: 8px; }
.service-overview-band {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 30px;
}
.service-overview-band div {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 22px;
}
.service-overview-band strong,
.service-overview-band span { display: block; }
.service-overview-band strong { margin-bottom: 6px; color: var(--dark); }
.service-overview-band span { color: var(--muted); }
.page-hero-large { max-width: 900px; }
.service-hero-section { padding-bottom: 44px; }
.service-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  gap: 28px;
  align-items: start;
}
.service-lead { font-size: 1.08rem; color: var(--muted); max-width: 760px; }
.service-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}
.service-badges span {
  padding: 10px 14px;
  border-radius: 10px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.85);
  font-weight: 700;
}
.service-summary-card h2 { margin-top: 0; }
.mini-contact-box {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid var(--line);
}
.mini-contact-box strong,
.mini-contact-box span { display: block; }
.mini-contact-box span { color: var(--muted); }
.service-content-layout { align-items: start; }
.stack-cards { display: grid; gap: 18px; }
.service-rich-text p:first-child { margin-top: 0; }
.steps-grid { gap: 18px; }
.step-card { position: relative; min-height: 160px; }
.step-index {
  display: inline-flex;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: var(--surface-alt);
  color: var(--accent);
  font-weight: 800;
  margin-bottom: 16px;
}
.faq-card h3,
.step-card h3 { margin-top: 0; }
.project-placeholder-premium {
  background:
    linear-gradient(135deg, rgba(157,106,63,0.18), rgba(37,31,26,0.10)),
    linear-gradient(135deg, #efe5d9, #d6c1a9);
}
.cta-panel-premium { background: linear-gradient(135deg, #fff, #f5ece1); }

@media (max-width: 1100px) {
  .card-grid-4,
  .service-overview-band,
  .service-hero-grid,
  .card-grid-2 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 820px) {
  .card-grid-4,
  .service-overview-band,
  .service-hero-grid,
  .card-grid-2 { grid-template-columns: 1fr; }
}

.steps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}
.steps-grid-home { margin-top: 12px; }
.step-card {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 26px;
  box-shadow: var(--shadow);
}
.step-number {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--accent);
  color: #fff;
  font-weight: 800;
  margin-bottom: 14px;
}
.project-single-layout { display: grid; gap: 28px; }
.project-single-hero {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px;
  align-items: center;
}
.project-single-main-image {
  width: 100%;
  height: 420px;
  object-fit: cover;
  border-radius: 18px;
}
.project-subtitle {
  color: var(--muted);
  font-size: 1.05rem;
  max-width: 720px;
}
.project-details-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
  margin-top: 22px;
}
.project-details-grid div {
  background: var(--surface-alt);
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 14px 16px;
}
.project-details-grid strong,
.project-details-grid span { display: block; }
.project-details-grid span { color: var(--muted); }
.project-gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.project-gallery-item img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  border-radius: 18px;
}
.project-benefit-card p { margin-bottom: 20px; }
@media (max-width: 980px) {
  .steps-grid,
  .project-gallery-grid,
  .project-single-hero,
  .project-grid,
  .archive-grid,
  .card-grid-3,
  .hero-grid,
  .two-column-layout,
  .hero-facts,
  .project-details-grid { grid-template-columns: 1fr; }
  .header-inner { grid-template-columns: auto auto; }
  .primary-navigation {
    display: none;
    grid-column: 1 / -1;
  }
  .primary-navigation.is-open { display: block; }
  .mobile-menu-toggle { display: inline-flex; justify-self: end; }
  .header-cta { display: none; }
  .primary-navigation ul { flex-direction: column; align-items: flex-start; padding: 14px 0 24px; }
}


/* Version 8 updates */
.hero-centered-layout { padding-top: 82px; padding-bottom: 54px; }
.hero-centered-wrap { display: flex; justify-content: center; }
.hero-content-centered { max-width: 980px; margin: 0 auto; text-align: center; }
.hero-content-centered h1 { font-size: clamp(2.45rem, 4.3vw, 3.95rem); max-width: 940px; margin-left: auto; margin-right: auto; }
.hero-content-centered p { max-width: 760px; margin-left: auto; margin-right: auto; }
.hero-actions-centered { justify-content: center; }
.hero-facts-centered { max-width: 980px; margin-left: auto; margin-right: auto; }
.inquiry-full-section { padding-top: 12px; }
.inquiry-full-card { padding: 34px; }
.inquiry-header-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; margin-bottom: 24px; }
.inquiry-stepbar { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.inquiry-stepbar span { padding: 10px 14px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-alt); color: var(--muted); font-weight: 700; font-size: 0.92rem; }
.inquiry-stepbar .is-active { background: rgba(157,106,63,0.12); color: var(--accent-dark); border-color: rgba(157,106,63,0.28); }
.inquiry-form-enhanced { display: grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
.inquiry-form-enhanced .form-row { margin: 0; }
.inquiry-form-enhanced .two-cols { grid-column: span 12; display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; }
.inquiry-form-enhanced .form-step-block[data-step="3"], .inquiry-form-enhanced .form-step-block[data-step="4"], .inquiry-form-enhanced .form-submit-row { grid-column: span 12; }
.inquiry-form-enhanced label { display: block; margin-bottom: 8px; font-weight: 700; color: var(--dark); }
.inquiry-form-enhanced input, .inquiry-form-enhanced select, .inquiry-form-enhanced textarea { width: 100%; border: 1px solid var(--line); border-radius: 14px; padding: 14px 16px; font: inherit; background: #fff; }
.inquiry-form-enhanced textarea { min-height: 160px; }
.inquiry-form-enhanced small.field-note { display: block; margin-top: 8px; color: var(--muted); }
.form-submit-row { display: flex; justify-content: center; margin-top: 6px; }
.form-submit-row .btn { min-width: 240px; }
.project-single-layout .project-lead { font-size: 1.05rem; color: var(--muted); margin-bottom: 0; }
@media (max-width: 920px) {
  .inquiry-header-row { flex-direction: column; }
  .inquiry-stepbar { justify-content: flex-start; }
  .inquiry-form-enhanced .two-cols { grid-template-columns: 1fr; }
  .hero-content-centered h1 { font-size: 2.5rem; }
}
@media (max-width: 640px) {
  .hero-content-centered h1 { font-size: 2.1rem; }
  .hero-facts-centered { grid-template-columns: 1fr; }
  .inquiry-full-card { padding: 22px; }
  .inquiry-stepbar span { width: 100%; justify-content: center; text-align: center; }
}

/* Version 9 homepage refinements */
.hero-home-minimal { padding: 78px 0 72px; }
.hero-home-minimal-inner { display: flex; justify-content: center; }
.hero-content-narrow { max-width: 760px; text-align: center; }
.hero-content-narrow h1 { font-size: clamp(2.2rem, 4.2vw, 3.8rem); max-width: none; margin-left: auto; margin-right: auto; }
.hero-content-narrow p { max-width: 700px; margin-left: auto; margin-right: auto; }
.section-compact { padding-top: 54px; padding-bottom: 54px; }
.section-heading-centered, .compact-heading { justify-content: center; text-align: center; }
.card-grid-4 { grid-template-columns: repeat(4, 1fr); }
.feature-cards-home { gap: 18px; }
.mini-feature-card { padding: 22px; text-align: center; }
.mini-feature-card h3 { margin: 0 0 8px; font-size: 1.08rem; }
.mini-feature-card p { margin: 0; color: var(--muted); font-size: 0.95rem; }
.services-grid-visual { align-items: stretch; }
.service-card-visual { padding: 0; overflow: hidden; display: flex; flex-direction: column; }
.service-card-media-link { display: block; }
.service-card-media, .service-card-media img, .service-card-media-fallback { width: 100%; height: 230px; }
.service-card-media img, .service-card-media-fallback { object-fit: cover; display: block; }
.service-card-media-fallback { background-size: cover; background-position: center; }
.service-card-content { padding: 20px 22px 24px; display: flex; flex-direction: column; gap: 10px; }
.service-card-content h3 { margin: 0; font-size: 1.2rem; }
.service-card-content p { margin: 0; color: var(--muted); }
.btn-small { padding: 11px 18px; font-size: 0.94rem; align-self: flex-start; }
.service-theme-kitchen .service-card-media-fallback { background-image: linear-gradient(rgba(20,20,20,.12),rgba(20,20,20,.18)), url('https://images.unsplash.com/photo-1484154218962-a197022b5858?auto=format&fit=crop&w=1200&q=80'); }
.service-theme-wardrobe .service-card-media-fallback { background-image: linear-gradient(rgba(20,20,20,.12),rgba(20,20,20,.18)), url('https://images.unsplash.com/photo-1556020685-ae41abfc9365?auto=format&fit=crop&w=1200&q=80'); }
.service-theme-living .service-card-media-fallback { background-image: linear-gradient(rgba(20,20,20,.12),rgba(20,20,20,.18)), url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80'); }
.service-theme-bedroom .service-card-media-fallback { background-image: linear-gradient(rgba(20,20,20,.12),rgba(20,20,20,.18)), url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80'); }
.service-theme-office .service-card-media-fallback { background-image: linear-gradient(rgba(20,20,20,.12),rgba(20,20,20,.18)), url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1200&q=80'); }
.service-theme-hallway .service-card-media-fallback { background-image: linear-gradient(rgba(20,20,20,.12),rgba(20,20,20,.18)), url('https://images.unsplash.com/photo-1505693416388-ac5ce068fe85?auto=format&fit=crop&w=1200&q=80'); }
.service-theme-default .service-card-media-fallback { background-image: linear-gradient(rgba(20,20,20,.12),rgba(20,20,20,.18)), url('https://images.unsplash.com/photo-1494526585095-c41746248156?auto=format&fit=crop&w=1200&q=80'); }
.cta-strip-wrap { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.cta-strip-wrap p { margin: 0; color: rgba(255,255,255,.82); }
@media (max-width: 1100px) {
  .card-grid-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 860px) {
  .cta-strip-wrap { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 720px) {
  .card-grid-4, .card-grid-3, .services-grid-visual, .steps-grid-home { grid-template-columns: 1fr; }
  .hero-home-minimal { padding-top: 56px; }
  .service-card-media, .service-card-media img, .service-card-media-fallback { height: 210px; }
}


/* Version 10 homepage refresh */
.hero-home-v10 {
  padding: 56px 0 48px;
  background: #eee8e1;
}
.hero-home-v10-inner {
  display: flex;
  justify-content: center;
}
.hero-content-v10 {
  max-width: 760px;
  text-align: center;
  padding: 24px 0 14px;
}
.hero-content-v10 h1 {
  font-size: clamp(2.2rem, 4.4vw, 4rem);
  margin-bottom: 18px;
}
.hero-content-v10 p {
  max-width: 620px;
  margin: 0 auto;
}
.section-v10-benefits {
  background: #fbf8f4;
  padding-top: 54px;
  padding-bottom: 38px;
}
.feature-cards-v10 .mini-feature-card {
  text-align: center;
  padding: 28px 22px 24px;
}
.mini-feature-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  margin-bottom: 12px;
  border-radius: 14px;
  border: 1px solid var(--line);
  color: var(--accent);
  font-size: 28px;
  font-weight: 700;
  background: #fff;
}
.feature-cards-v10 .mini-feature-card p {
  margin: 0;
}
.section-v10-services {
  padding-top: 32px;
}
.services-grid-v10 {
  gap: 18px;
}
.service-card-v10 {
  overflow: hidden;
  padding: 0;
  display: flex;
  flex-direction: column;
}
.service-card-media-v10 {
  aspect-ratio: 1.35 / 1;
  overflow: hidden;
  border-radius: 20px 20px 0 0;
}
.service-card-media-v10 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease, filter .35s ease;
}
.service-card-v10:hover .service-card-media-v10 img {
  transform: scale(1.04);
  filter: saturate(1.05);
}
.service-card-content-v10 {
  padding: 14px 16px 18px;
}
.service-card-content-v10 h3 {
  font-size: 1.16rem;
  margin-bottom: 6px;
}
.service-card-content-v10 p {
  min-height: 44px;
  margin-bottom: 14px;
}
.btn-service-hover {
  width: 100%;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease;
}
.btn-service-hover:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(125, 85, 50, 0.18);
}

.checkbox-grid-projects {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.checkbox-card {
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px 14px;
  background: #fff;
  cursor: pointer;
  transition: .2s ease;
}
.checkbox-card:hover {
  border-color: var(--accent);
  box-shadow: 0 8px 20px rgba(22, 18, 15, 0.06);
}
.checkbox-card input {
  width: 18px;
  height: 18px;
  accent-color: var(--accent);
}
.checkbox-card span {
  font-size: 0.96rem;
  color: var(--text);
}
@media (max-width: 980px) {
  .services-grid-v10,
  .feature-cards-v10 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 767px) {
  .hero-home-v10 {
    padding: 34px 0 26px;
  }
  .hero-content-v10 h1 {
    font-size: 2.35rem;
  }
  .services-grid-v10,
  .feature-cards-v10,
  .checkbox-grid-projects {
    grid-template-columns: 1fr;
  }
  .service-card-content-v10 p {
    min-height: 0;
  }
}


.project-category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}
.project-category-card{overflow:hidden;border-radius:28px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.project-category-card-link{display:block;color:inherit}
.project-category-image-wrap{position:relative;height:320px;overflow:hidden}
.project-category-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.project-category-card:hover .project-category-image-wrap img{transform:scale(1.04)}
.project-category-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.66),rgba(0,0,0,.12))}
.project-category-headline{position:absolute;left:24px;right:24px;bottom:24px;color:#fff}
.project-category-count{display:inline-flex;margin-bottom:10px;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.92);color:var(--accent-dark);font-size:.8rem;font-weight:800}
.project-category-headline h2{margin:0;font-size:2rem;color:#fff}
.project-category-body{padding:24px}.project-category-body p{color:var(--muted);margin:0 0 18px}
.project-category-hero{margin-bottom:30px;padding:0;overflow:hidden}
.project-category-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.project-category-hero-copy{padding:40px}.project-category-hero-image img,.project-category-hero-image .project-placeholder{width:100%;height:100%;min-height:360px;object-fit:cover}
.project-gallery-grid-rich{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.project-gallery-item{position:relative;display:block;overflow:hidden;border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
.project-gallery-item img{width:100%;height:290px;object-fit:cover}
.project-gallery-caption{display:block;padding:16px 18px}.project-gallery-caption strong{display:block;color:var(--dark)}.project-gallery-caption small{display:block;color:var(--muted);margin-top:6px}
@media (max-width: 991px){.project-category-grid,.project-gallery-grid-rich,.project-category-hero-grid{grid-template-columns:1fr}.project-category-image-wrap{height:260px}}

@media (min-width: 901px) {
  .primary-navigation { position: static !important; height: auto !important; width: auto !important; background: transparent !important; padding: 0 !important; box-shadow: none !important; transform: none !important; overflow: visible !important; }
  .primary-navigation ul { flex-direction: row !important; }
}


/* Version 12.6 header layout polish */
.site-header { overflow: visible; }
.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  min-height: 84px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.site-branding {
  flex: 0 0 auto;
  min-width: 0;
  gap: 12px;
  max-width: 360px;
}
.logo-wrap,
.custom-logo-link {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}
.custom-logo {
  width: auto;
  max-width: 120px;
  max-height: 84px;
  object-fit: contain;
}
.branding-copy {
  min-width: 0;
}
.site-title {
  font-size: 1.2rem;
  line-height: 1.15;
  margin: 0;
}
.site-tagline {
  font-size: 0.8rem;
  line-height: 1.35;
  margin-top: 4px;
}
.primary-navigation {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  justify-content: center;
}
.primary-navigation ul {
  justify-content: center;
  gap: 18px;
  flex-wrap: nowrap;
}
.primary-navigation li {
  white-space: nowrap;
}
.primary-navigation a {
  font-size: 0.95rem;
}
.header-cta {
  flex: 0 0 auto;
  white-space: nowrap;
  padding: 12px 18px;
  font-size: 0.92rem;
}

@media (max-width: 1200px) {
  .site-branding { max-width: 320px; }
  .custom-logo { max-width: 102px; max-height: 74px; }
  .site-title { font-size: 1.08rem; }
  .site-tagline { font-size: 0.74rem; }
  .primary-navigation ul { gap: 14px; }
  .primary-navigation a { font-size: 0.9rem; }
  .header-cta { padding: 11px 15px; font-size: 0.88rem; }
}

@media (max-width: 980px) {
  .header-inner {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 14px;
    min-height: 76px;
  }
  .site-branding {
    max-width: none;
    gap: 10px;
  }
  .custom-logo { max-width: 86px; max-height: 62px; }
  .site-title { font-size: 1rem; }
  .site-tagline { display: none; }
  .mobile-menu-toggle { display: inline-flex; justify-self: end; }
  .header-cta { display: none; }
  .primary-navigation {
    display: none;
    grid-column: 1 / -1;
    justify-content: stretch;
  }
  .primary-navigation.is-open { display: block; }
}

@media (max-width: 640px) {
  .header-inner { min-height: 70px; }
  .custom-logo { max-width: 72px; max-height: 52px; }
  .site-title { font-size: 0.95rem; }
  .site-branding { gap: 8px; }
}


/* Blog & SEO section */
.mps-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#fff;border:1px solid #d8c5b6;color:#7b5b47;font-weight:700;font-size:.86rem;box-shadow:0 10px 30px rgba(82,54,33,.06)}
.mps-blog-page,.mps-single-blog-page{background:linear-gradient(180deg,#fbf7f2 0%,#f6f1eb 100%)}
.mps-blog-hero{padding:72px 0 40px;background:linear-gradient(180deg,#f7f2ec 0%,#efe3d8 100%);border-bottom:1px solid #e2d4c8}
.mps-blog-hero__content{max-width:860px}
.mps-blog-hero h1{margin:14px 0 0;font-size:clamp(2.3rem,5vw,4.5rem);line-height:1.02;color:#2f241d}
.mps-blog-hero p{margin:18px 0 0;font-size:1.08rem;line-height:1.85;color:#6c5c4e;max-width:760px}
.mps-blog-layout,.mps-single-blog-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:28px;align-items:start;padding-top:34px;padding-bottom:56px}
.mps-blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.mps-blog-card{background:#fff;border:1px solid #e1d2c4;border-radius:28px;overflow:hidden;box-shadow:0 16px 40px rgba(115,84,58,.08);display:flex;flex-direction:column}
.mps-blog-card__thumb{display:block;background:#eadfd5;min-height:220px}
.mps-blog-card__thumb img{display:block;width:100%;height:100%;min-height:220px;object-fit:cover}
.mps-blog-card__placeholder{display:flex;align-items:center;justify-content:center;height:100%;min-height:220px;font-weight:800;color:#7b5b47}
.mps-blog-card__body{padding:22px}
.mps-blog-card__meta{font-size:.88rem;color:#8b7564;margin-bottom:10px}
.mps-blog-card h2{margin:0 0 12px;font-size:1.42rem;line-height:1.25}
.mps-blog-card h2 a{text-decoration:none;color:#2f241d}
.mps-blog-card p{margin:0;color:#65574c;line-height:1.8}
.mps-text-link{display:inline-block;margin-top:14px;font-weight:700;color:#7b5b47;text-decoration:none}
.mps-text-link:hover{color:#2f241d}
.mps-sidebar-list{list-style:none;margin:0;padding:0}
.mps-sidebar-list li{padding:9px 0;border-bottom:1px solid #eee3d9}
.mps-sidebar-list a{text-decoration:none;color:#4c3a2f}
.mps-sidebar-list a:hover{color:#7b5b47}
.mps-pagination{margin-top:24px}
.mps-single-blog-card{padding:0;overflow:hidden}
.mps-single-blog-content{padding:28px 30px 32px;line-height:1.9;color:#3e3128}
.mps-single-blog-content h2,.mps-single-blog-content h3{color:#2f241d;margin-top:1.8em}
.mps-single-blog-content ul,.mps-single-blog-content ol{padding-left:22px}
.mps-blog-cta-box{margin-top:26px;padding:22px;border:1px solid #e0d0c3;border-radius:24px;background:#fbf6f1}
@media (max-width: 1024px){.mps-blog-grid{grid-template-columns:1fr}.mps-blog-layout,.mps-single-blog-layout{grid-template-columns:1fr}.mps-blog-sidebar{order:2}}
@media (max-width: 640px){.mps-blog-hero{padding:54px 0 28px}.mps-blog-card__body{padding:18px}.mps-single-blog-content{padding:22px 18px 26px}}
.mps-honeypot {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.mps-security-check {
    margin: 16px 0;
}

.mps-security-check .cf-turnstile {
    min-height: 65px;
}

/* =========================================================
   v13.11 Premium public redesign + location SEO pages
   ========================================================= */
:root{
  --mps-ink:#17120f;
  --mps-walnut:#2b1d17;
  --mps-walnut-2:#3c281f;
  --mps-copper:#a86f45;
  --mps-copper-deep:#7d4f31;
  --mps-gold:#d4ad78;
  --mps-oak:#c9a67b;
  --mps-cream:#f7f1e8;
  --mps-sand:#eee4d7;
  --mps-line:#dfd2c3;
  --mps-charcoal:#171513;
  --mps-display: Georgia, 'Times New Roman', serif;
}

body{background:#faf7f2;color:#2b241f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
h1,h2,h3,.site-title{letter-spacing:-.025em;}
.mps-premium-home h1,.mps-premium-home h2,.mps-location-page h1,.mps-location-page h2,.mps-locations-archive h1,.mps-locations-archive h2{font-family:var(--mps-display);font-weight:500;}

.site-header{background:rgba(250,247,242,.94);border-bottom:1px solid rgba(111,85,63,.16);box-shadow:0 8px 30px rgba(37,26,19,.035);}
.header-inner{min-height:88px;}
.site-title{font-family:var(--mps-display);font-weight:600;color:var(--mps-walnut);}
.primary-navigation a{position:relative;font-weight:650;color:#332820;}
.primary-navigation a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--mps-copper);transition:right .25s ease;}
.primary-navigation a:hover:after{right:0;}

.header-cta{border-radius:999px;background:var(--mps-walnut);box-shadow:none;padding:13px 20px;}
.header-cta:hover{background:var(--mps-copper-deep);}

.hero-kicker,.section-label-wood{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:800;color:var(--mps-copper-deep);}
.hero-kicker:before,.section-label-wood:before{content:"";width:34px;height:1px;background:currentColor;}
.hero-kicker-light{color:#ead6bd;}

.home-luxe-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#f8f2e8 0%,#efe3d4 56%,#e8dbc9 100%);padding:78px 0 86px;}
.home-luxe-hero__grain,.section-warm-grain:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.22;background-image:repeating-linear-gradient(92deg,rgba(86,51,31,.035) 0,rgba(86,51,31,.035) 1px,transparent 1px,transparent 7px),repeating-linear-gradient(4deg,rgba(255,255,255,.12) 0,rgba(255,255,255,.12) 2px,transparent 2px,transparent 15px);}
.home-luxe-hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:68px;align-items:center;}
.home-luxe-hero__copy{max-width:720px;}
.home-luxe-hero h1{font-size:clamp(3.25rem,6.2vw,6.8rem);line-height:.93;margin:18px 0 24px;color:var(--mps-ink);}
.home-luxe-hero__copy>p{font-size:1.13rem;line-height:1.8;color:#625548;max-width:690px;margin:0;}
.hero-actions-luxe{margin-top:30px;}
.btn-luxe,.btn-light-luxe,.btn-glass,.btn-glass-dark{border-radius:999px;padding:15px 24px;box-shadow:none;}
.btn-luxe{background:var(--mps-walnut);}
.btn-luxe:hover{background:var(--mps-copper-deep);transform:translateY(-1px);}
.btn-glass-dark{border:1px solid rgba(53,39,29,.22);background:rgba(255,255,255,.4);color:var(--mps-ink);}
.btn-glass-dark:hover{border-color:var(--mps-copper);background:#fff;color:var(--mps-copper-deep);}
.btn-glass{border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.08);color:#fff;}
.btn-light-luxe{background:#f5eadb;color:#2b1d17;}
.btn-light-luxe:hover{background:#fff;color:#2b1d17;}
.hero-luxe-points{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px;padding-top:25px;border-top:1px solid rgba(67,48,35,.16);}
.hero-luxe-points div{display:flex;gap:10px;align-items:flex-start;}
.hero-luxe-points strong{font-family:var(--mps-display);font-size:1.28rem;color:var(--mps-copper);font-weight:500;}
.hero-luxe-points span{font-size:.91rem;line-height:1.45;color:#56483d;}
.home-luxe-hero__visual{position:relative;min-height:570px;}
.hero-visual-frame{position:absolute;inset:0 18px 32px 0;border-radius:38px 38px 160px 38px;overflow:hidden;box-shadow:0 36px 90px rgba(50,35,24,.2);}
.hero-visual-frame img{width:100%;height:100%;object-fit:cover;}
.hero-visual-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(20,13,10,.55) 100%);}
.hero-visual-caption{position:absolute;left:34px;right:34px;bottom:36px;color:#fff;}
.hero-visual-caption span{display:block;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;opacity:.8;margin-bottom:7px;}
.hero-visual-caption strong{display:block;font-family:var(--mps-display);font-size:2rem;font-weight:500;line-height:1.15;}
.hero-floating-card{position:absolute;right:-14px;bottom:0;z-index:2;width:260px;padding:20px 22px;background:#f7efe4;border:1px solid #e1cfbc;border-radius:22px;box-shadow:0 20px 45px rgba(48,31,20,.14);}
.hero-floating-card small{display:block;color:#866548;text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;font-weight:800;}
.hero-floating-card strong{display:block;font-family:var(--mps-display);font-size:1.22rem;color:#2c211a;margin-top:4px;font-weight:500;}

.home-trust-rail{background:#201915;color:#efe3d6;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);}
.home-trust-rail__grid{display:grid;grid-template-columns:repeat(4,1fr);}
.home-trust-rail__grid>div{padding:24px 26px;border-right:1px solid rgba(255,255,255,.09);display:grid;grid-template-columns:28px 1fr;column-gap:10px;align-items:center;}
.home-trust-rail__grid>div:last-child{border-right:0;}
.home-trust-rail__grid span{grid-row:1/3;color:var(--mps-gold);font-size:1.35rem;}
.home-trust-rail__grid strong{font-size:.94rem;color:#fff;}
.home-trust-rail__grid small{font-size:.78rem;color:#bcae9f;}

.section-warm-grain{position:relative;background:linear-gradient(180deg,#f7f1e8,#f0e7dc);}
.section-warm-grain>.container{position:relative;}
.premium-heading-row{align-items:flex-end;margin-bottom:36px;}
.premium-heading-row h2{font-size:clamp(2.25rem,4vw,4.2rem);line-height:1.04;max-width:900px;margin:9px 0 0;color:var(--mps-ink);}
.premium-heading-row .section-intro{max-width:760px;margin:14px 0 0;color:#6d5f53;}
.luxe-link,.light-link{font-weight:750;white-space:nowrap;color:var(--mps-copper-deep);}
.light-link{color:#ead1b2;}

.premium-service-grid{gap:24px;}
.premium-service-card{background:#fff;border:1px solid rgba(119,87,61,.18);border-radius:28px;overflow:hidden;box-shadow:0 16px 42px rgba(61,42,28,.07);transition:transform .3s ease,box-shadow .3s ease;}
.premium-service-card:hover{transform:translateY(-5px);box-shadow:0 24px 52px rgba(61,42,28,.12);}
.premium-service-image{position:relative;display:block;aspect-ratio:1.32/1;overflow:hidden;}
.premium-service-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease;}
.premium-service-card:hover img{transform:scale(1.045);}
.premium-service-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(17,12,9,.28));}
.premium-service-arrow{position:absolute;right:18px;top:18px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.9);color:#2b1d17;font-size:1.2rem;backdrop-filter:blur(6px);}
.premium-service-copy{padding:22px 24px 26px;}
.premium-service-copy h3{margin:0 0 9px;font-family:var(--mps-display);font-size:1.5rem;font-weight:500;}
.premium-service-copy h3 a{color:#2b211a;}
.premium-service-copy p{margin:0;color:#74675c;line-height:1.7;}

.home-material-story{background:#fff;}
.material-story-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(460px,1.08fr);gap:70px;align-items:center;}
.material-story-copy h2{font-size:clamp(2.3rem,4vw,4.1rem);line-height:1.04;margin:12px 0 18px;color:var(--mps-ink);}
.material-story-copy p{color:#6c5f55;font-size:1.04rem;}
.material-chip-grid{display:flex;flex-wrap:wrap;gap:10px;margin:26px 0 24px;}
.material-chip-grid span{padding:9px 14px;border:1px solid #dfd2c3;border-radius:999px;background:#faf7f2;font-size:.86rem;font-weight:700;color:#5c4839;}
.material-story-visual{display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:repeat(2,190px);gap:16px;}
.material-swatch{position:relative;padding:24px;border-radius:30px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;box-shadow:0 18px 40px rgba(52,35,23,.08);}
.material-swatch:before{content:"";position:absolute;inset:0;opacity:.38;background:repeating-linear-gradient(6deg,rgba(255,255,255,.05) 0 2px,transparent 2px 9px),repeating-linear-gradient(96deg,rgba(37,20,11,.12) 0 1px,transparent 1px 11px);}
.material-swatch>*{position:relative;}
.swatch-walnut{grid-row:1/3;background:linear-gradient(135deg,#3a2419,#7f5033);color:#fff;}
.swatch-oak{background:linear-gradient(135deg,#d9bc91,#aa8154);color:#35281d;}
.swatch-cream{background:linear-gradient(135deg,#f1ece4,#d8cdbf);color:#35281d;}
.material-swatch small{font-size:.75rem;letter-spacing:.12em;font-weight:800;opacity:.75;}
.material-swatch strong{font-family:var(--mps-display);font-size:1.7rem;font-weight:500;}

.section-charcoal{background:radial-gradient(circle at 15% 20%,#30241e 0,#1b1714 45%,#141210 100%);color:#fff;}
.light-heading h2,.light-heading p{color:#fff;}
.light-heading p{opacity:.7;}
.premium-project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.premium-project-card{position:relative;border-radius:30px;overflow:hidden;min-height:390px;background:#2b221d;}
.premium-project-card a{display:block;height:100%;color:#fff;}
.premium-project-card img,.premium-project-card .project-placeholder{width:100%;height:390px;object-fit:cover;transition:transform .55s ease;}
.premium-project-card:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 45%,rgba(12,9,7,.78) 100%);}
.premium-project-card:hover img{transform:scale(1.04);}
.premium-project-caption{position:absolute;z-index:2;left:24px;right:24px;bottom:23px;}
.premium-project-caption small{display:block;color:#d8b994;font-size:.8rem;margin-bottom:4px;}
.premium-project-caption strong{display:block;font-family:var(--mps-display);font-size:1.55rem;font-weight:500;color:#fff;}

.process-luxe-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#dfd2c4;border:1px solid #dfd2c4;border-radius:30px;overflow:hidden;}
.process-luxe-grid article{background:#fff;padding:32px 28px;min-height:245px;}
.process-luxe-grid span{font-family:var(--mps-display);font-size:2.3rem;color:#c09972;}
.process-luxe-grid h3{font-family:var(--mps-display);font-size:1.45rem;font-weight:500;margin:30px 0 10px;}
.process-luxe-grid p{margin:0;color:#73675d;font-size:.93rem;}

.location-home-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start;}
.location-home-copy h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.04;margin:12px 0 18px;}
.location-home-copy p{color:#6c5f54;}
.location-home-links{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}
.location-home-links a{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border:1px solid #ddcfbf;border-radius:16px;background:rgba(255,255,255,.72);color:#30241c;font-weight:750;transition:.25s ease;}
.location-home-links a:hover{background:#fff;transform:translateY(-2px);border-color:#c69a71;}
.location-home-links b{font-size:1.15rem;color:#a66e45;}

.review-luxe-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.review-luxe-grid article{position:relative;padding:30px;background:#fff;border:1px solid #e5dacd;border-radius:26px;}
.review-quote{font-family:var(--mps-display);font-size:4.5rem;line-height:.6;color:#d3ad84;}
.review-luxe-grid p{color:#5f5349;}
.review-luxe-grid strong{display:block;margin-top:20px;color:#33271f;}

.home-final-cta-wrap{padding-top:36px;}
.home-final-cta{display:flex;justify-content:space-between;gap:50px;align-items:center;padding:48px 52px;border-radius:36px;background:linear-gradient(120deg,#3a271d,#1f1814);color:#fff;box-shadow:0 28px 60px rgba(47,31,21,.18);}
.home-final-cta h2{font-size:clamp(2.1rem,4vw,3.6rem);line-height:1.05;color:#fff;margin:12px 0 14px;max-width:780px;}
.home-final-cta p{margin:0;color:#d7c8b9;max-width:730px;}
.home-final-cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;min-width:330px;}

/* Location archive + single */
.premium-page-hero{position:relative;background:linear-gradient(135deg,#efe4d6,#f8f3eb);overflow:hidden;}
.location-hero{padding:68px 0 78px;}
.location-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(430px,.9fr);gap:60px;align-items:center;}
.location-hero-copy h1{font-size:clamp(3rem,5.6vw,6rem);line-height:.96;margin:16px 0 22px;color:#1f1915;}
.location-lead{font-size:1.1rem;color:#66584c;max-width:680px;}
.location-proof-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:24px;}
.location-proof-row span{padding:8px 11px;border-radius:999px;background:#fff;border:1px solid #e3d7ca;font-size:.78rem;font-weight:750;color:#5b4839;}
.location-hero-media{position:relative;height:510px;border-radius:36px;overflow:hidden;box-shadow:0 30px 70px rgba(59,41,27,.18);}
.location-hero-media img{width:100%;height:100%;object-fit:cover;}
.location-media-badge{position:absolute;left:22px;bottom:22px;display:flex;flex-direction:column;background:rgba(255,250,244,.92);backdrop-filter:blur(8px);padding:13px 16px;border-radius:14px;color:#2d211a;}
.location-media-badge strong{font-family:var(--mps-display);font-size:1.2rem;font-weight:500;}
.location-media-badge span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:#8b6b50;}
.compact-section{padding:54px 0;}
.location-context-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start;}
.location-context-grid h2{font-size:clamp(2.15rem,3.5vw,3.55rem);line-height:1.08;margin:10px 0 0;}
.location-context-card{border-left:2px solid #b67a4e;padding:4px 0 4px 28px;color:#615449;font-size:1.04rem;}
.location-editorial-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:28px;align-items:start;}
.location-rich-content{padding:34px;}
.location-rich-content h2,.location-rich-content h3{font-family:var(--mps-display);font-weight:500;}
.location-side-panel{display:grid;gap:18px;}
.wood-panel{position:relative;overflow:hidden;padding:28px;border-radius:28px;background:linear-gradient(135deg,#4a2f21,#241914);color:#fff;box-shadow:0 18px 42px rgba(50,31,20,.14);}
.wood-panel:after{content:"";position:absolute;inset:0;opacity:.14;background:repeating-linear-gradient(96deg,#fff 0 1px,transparent 1px 11px);}
.wood-panel>*{position:relative;z-index:1;}
.wood-panel h3{font-family:var(--mps-display);font-size:1.7rem;font-weight:500;color:#fff;}
.wood-panel p{color:#ddcdbd;}
.location-mini-cta{padding:26px;}
.nearby-chip-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px;}
.nearby-chip{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid #dfd2c4;color:#5c4a3b;font-weight:700;font-size:.86rem;}
.location-final-cta{display:flex;align-items:center;justify-content:space-between;gap:48px;padding:42px 46px;border-radius:34px;background:linear-gradient(120deg,#3b271d,#201713);color:#fff;}
.location-final-cta h2{color:#fff;font-size:clamp(2rem,3.5vw,3.4rem);margin:10px 0 12px;}
.location-final-cta p{color:#d8c7b7;margin:0;max-width:760px;}
.location-hub-hero{padding:70px 0;}
.location-hub-copy{max-width:850px;}
.location-hub-copy h1{font-size:clamp(3rem,5vw,5.7rem);line-height:.98;margin:14px 0 18px;}
.location-hub-copy p{font-size:1.08rem;color:#69594b;max-width:760px;}
.location-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.location-hub-card{overflow:hidden;border-radius:26px;background:#fff;border:1px solid #dfd2c3;box-shadow:0 16px 40px rgba(60,41,27,.07);}
.location-hub-card-image{display:block;aspect-ratio:1.45/1;overflow:hidden;}
.location-hub-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease;}
.location-hub-card:hover img{transform:scale(1.04);}
.location-hub-card-copy{padding:22px 23px 25px;}
.location-city-label{display:inline-block;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#9a6c49;font-weight:800;}
.location-hub-card h2{font-size:1.65rem;margin:6px 0 10px;}
.location-hub-card h2 a{color:#2d221a;}
.location-hub-card p{color:#716459;}

.site-footer{background:linear-gradient(180deg,#211814,#151210);margin-top:72px;}
.footer-top{grid-template-columns:1.3fr .8fr .8fr;gap:44px;padding-top:58px;}
.site-footer h3{font-family:var(--mps-display);font-weight:500;font-size:1.35rem;}

@media (max-width:1100px){
  .home-luxe-hero__grid,.location-hero-grid,.material-story-grid{grid-template-columns:1fr 1fr;gap:40px;}
  .home-luxe-hero h1,.location-hero-copy h1{font-size:clamp(3rem,5.4vw,5rem);}
  .hero-luxe-points{grid-template-columns:1fr;gap:10px;}
  .home-trust-rail__grid{grid-template-columns:repeat(2,1fr);}
  .home-trust-rail__grid>div:nth-child(2){border-right:0;}
  .premium-project-grid,.location-card-grid{grid-template-columns:repeat(2,1fr);}
  .process-luxe-grid{grid-template-columns:repeat(2,1fr);}
  .location-home-grid,.location-context-grid{grid-template-columns:1fr;gap:30px;}
  .review-luxe-grid{grid-template-columns:1fr 1fr;}
}

@media (max-width:820px){
  .home-luxe-hero{padding:50px 0 58px;}
  .home-luxe-hero__grid,.location-hero-grid,.material-story-grid,.location-editorial-grid{grid-template-columns:1fr;}
  .home-luxe-hero__visual{min-height:460px;}
  .hero-visual-frame{inset:0 0 20px 0;border-radius:30px 30px 90px 30px;}
  .hero-floating-card{right:10px;}
  .home-trust-rail__grid{grid-template-columns:1fr 1fr;}
  .premium-service-grid,.premium-project-grid,.location-card-grid{grid-template-columns:1fr 1fr;}
  .material-story-visual{min-height:410px;}
  .home-final-cta,.location-final-cta{display:block;padding:34px 30px;}
  .home-final-cta-actions{margin-top:24px;min-width:0;justify-content:flex-start;}
  .location-hero-media{height:430px;}
  .location-home-links{grid-template-columns:1fr;}
  .review-luxe-grid{grid-template-columns:1fr;}
}

@media (max-width:640px){
  .home-luxe-hero h1,.location-hero-copy h1{font-size:3rem;}
  .home-luxe-hero__copy>p,.location-lead{font-size:1rem;}
  .hero-actions-luxe .btn,.location-hero .hero-actions .btn{width:100%;}
  .home-luxe-hero__visual{min-height:390px;}
  .hero-floating-card{left:18px;right:18px;width:auto;}
  .home-trust-rail__grid{grid-template-columns:1fr;}
  .home-trust-rail__grid>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.08);}
  .premium-heading-row{display:block;}
  .premium-heading-row>a{display:inline-block;margin-top:18px;}
  .premium-service-grid,.premium-project-grid,.location-card-grid{grid-template-columns:1fr;}
  .premium-project-card,.premium-project-card img,.premium-project-card .project-placeholder{height:330px;min-height:330px;}
  .material-story-visual{grid-template-columns:1fr;grid-template-rows:repeat(3,160px);min-height:0;}
  .swatch-walnut{grid-row:auto;}
  .process-luxe-grid{grid-template-columns:1fr;}
  .location-hero-media{height:340px;}
  .location-final-cta-section{padding-top:30px;}
}
.footer-top-with-locations{grid-template-columns:1.25fr .85fr .75fr .8fr;}
.footer-signature{font-size:.82rem;color:#bfae9d;}
.footer-location-list{list-style:none;margin:0;padding:0;display:grid;gap:7px;}
.footer-location-list a,.footer-all-locations{color:#ecd8c1;}
.footer-all-locations{display:inline-block;margin-top:12px;font-weight:700;}
@media(max-width:1000px){.footer-top-with-locations{grid-template-columns:repeat(2,1fr);}}
@media(max-width:640px){.footer-top-with-locations{grid-template-columns:1fr;}}

/* v13.13 icon-led service catalogue based on the approved brand concept */
.mps-services-page{background:#f7f3ed;color:#302a25}
.mps-services-section{position:relative;isolation:isolate;overflow:hidden;padding:38px 0 56px;background:radial-gradient(ellipse at 50% 17%,rgba(255,255,255,.98) 0,rgba(250,247,242,.96) 45%,rgba(239,229,216,.9) 100%)}
.mps-services-room{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.02),transparent 19%,rgba(255,255,255,.78) 32%,rgba(255,255,255,.78) 68%,transparent 82%),repeating-linear-gradient(90deg,rgba(132,83,48,.12) 0 3px,transparent 3px 11px);opacity:.35;mask-image:linear-gradient(90deg,#000,transparent 22%,transparent 78%,#000)}
.mps-services-content{position:relative;max-width:1280px}
.mps-services-heading{text-align:center;max-width:850px;margin:0 auto 28px}
.mps-services-heading .section-label{display:inline-block;color:#9b5c35;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:700;margin-bottom:4px}
.mps-services-heading h1{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-.035em;font-size:clamp(2.25rem,4vw,3.55rem);line-height:1.08;color:#211d19;margin:0 0 10px}
.mps-services-heading p{font-family:Georgia,'Times New Roman',serif;color:#69615b;font-size:1.1rem;line-height:1.55;margin:0 auto;max-width:790px}
.mps-service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.mps-service-card{min-width:0;border:1px solid rgba(135,97,67,.1);border-radius:12px;background:rgba(255,255,255,.94);box-shadow:0 9px 28px rgba(62,45,31,.08);transition:transform .2s ease,box-shadow .2s ease}
.mps-service-card:hover{transform:translateY(-3px);box-shadow:0 15px 35px rgba(62,45,31,.13)}
.mps-service-card__link{display:flex;height:100%;min-height:270px;flex-direction:column;align-items:flex-start;padding:20px 24px 18px;color:inherit}
.mps-service-card__link:hover{color:inherit}
.mps-service-card__art{display:flex;width:100%;height:98px;align-items:center;justify-content:center;color:#ad6237;margin:0 0 10px}
.service-line-icon{width:112px;height:92px;overflow:visible}
.mps-service-card h2,.mps-service-card h3{font-family:Georgia,'Times New Roman',serif;color:#211d19;font-size:1.45rem;line-height:1.2;font-weight:500;margin:0 0 8px}
.mps-service-card p{color:#706862;font-size:.96rem;line-height:1.5;margin:0 0 12px}
.mps-service-card__more{margin-top:auto;color:#a34f27;font-family:Georgia,'Times New Roman',serif;font-size:1rem;border-bottom:1px solid #c48058;padding-bottom:2px}
.mps-service-card__more span{display:inline-block;margin-left:5px;transition:transform .2s ease}
.mps-service-card__link:hover .mps-service-card__more span{transform:translateX(4px)}
.mps-service-detail-icon{display:block;width:76px;height:76px;color:#a85f35;margin:16px 0 8px}
.mps-service-detail-icon .service-line-icon{width:76px;height:76px}
.premium-service-grid .premium-service-card{overflow:hidden}
.premium-service-grid .premium-service-card .mps-service-card__link{min-height:285px}
.mps-front-page .premium-service-grid .mps-service-card{border-radius:14px}
.mps-front-page .premium-service-grid .mps-service-card h3{font-size:1.35rem}
.site-header{background:rgba(250,247,242,.96);border-bottom-color:rgba(148,112,82,.16)}
.header-inner{min-height:76px;gap:clamp(12px,2vw,30px)}
.site-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.05rem,1.7vw,1.55rem);font-weight:500;letter-spacing:-.025em}
.site-tagline{display:none}
.header-cta{background:#a65f39;border-radius:6px;padding:13px 24px;white-space:nowrap;box-shadow:none}
.header-cta:hover{background:#8e4f2d}
.site-footer{background:#f8f4ee;color:#28231f;border-top:1px solid rgba(125,89,61,.15)}
.site-footer .footer-top{padding-top:25px;padding-bottom:20px}
.site-footer .footer-top>div{align-self:center}
.site-footer .footer-top h3{font-family:Georgia,'Times New Roman',serif;color:#28231f;font-size:1.2rem;font-weight:500;margin:0 0 5px}
.site-footer .footer-top p,.site-footer .footer-list{color:#766d65;font-size:.88rem;line-height:1.45;margin:0}
.site-footer .footer-signature{display:none}
.site-footer .footer-list{padding:0;list-style:none}
.site-footer .footer-list li{margin:3px 0}
.site-footer .footer-bottom{border-top:1px solid rgba(255,255,255,.13);background:#27221f;color:#e8e0d7;max-width:none;padding:14px max(24px,calc((100% - 1280px)/2));display:flex;justify-content:space-between;align-items:center;gap:18px}
.site-footer .footer-bottom p{margin:0;font-size:.8rem}
.site-footer .footer-bottom a{color:#e8e0d7}
.site-footer .mps-brand-footer__top{display:grid;grid-template-columns:1.35fr 1fr 1fr 1.25fr auto;align-items:center;gap:24px;padding-top:24px;padding-bottom:22px}
.mps-brand-footer__contact{display:flex;align-items:center;gap:12px;min-width:0}
.mps-brand-footer__contact strong,.mps-brand-footer__contact small{display:block;overflow-wrap:anywhere}
.mps-brand-footer__contact strong{font-size:.94rem;color:#332b26;font-weight:600}
.mps-brand-footer__contact small{font-size:.78rem;color:#82776d;margin-top:3px}
.mps-brand-footer__contact small a{color:inherit}
.mps-footer-icon{display:grid;place-items:center;flex:0 0 30px;color:#ad6237}
.mps-footer-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mps-footer-cta{justify-self:end}
.mps-brand-footer__bottom{padding-top:0!important;padding-bottom:0!important}
.mps-brand-footer__bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:13px;padding-bottom:13px}
.mps-brand-footer__bottom .footer-menu{display:flex;align-items:center;gap:20px;list-style:none;margin:0;padding:0}
.mps-brand-footer__bottom .footer-menu a{font-size:.8rem;font-weight:500}
@media(max-width:1080px){.site-footer .mps-brand-footer__top{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.mps-footer-cta{justify-self:start}}
@media(max-width:900px){.mps-service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.mps-service-card__link{min-height:265px}.site-footer .footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media(max-width:620px){.mps-services-section{padding:30px 0 38px}.mps-services-heading{margin-bottom:22px}.mps-services-heading h1{font-size:2.2rem}.mps-services-heading p{font-size:1rem}.desktop-break{display:none}.mps-service-cards{grid-template-columns:1fr;gap:13px}.mps-service-card__link{min-height:0;padding:18px 20px}.mps-service-card__art{height:82px;margin-bottom:7px}.service-line-icon{height:78px;width:96px}.site-footer .mps-brand-footer__top{grid-template-columns:1fr;gap:14px}.site-footer .footer-bottom{display:block;text-align:center}.mps-brand-footer__bottom-inner{display:flex;flex-direction:column;text-align:center}.mps-brand-footer__bottom .footer-menu{flex-wrap:wrap;justify-content:center;gap:12px}.site-footer .footer-bottom>*+*{margin-top:8px}}

/* v13.16: concept before/after and untruncated project-gallery captions */
.project-gallery-item{display:block;min-width:0;overflow:hidden;border-radius:14px;background:#fff;color:inherit;text-decoration:none;box-sizing:border-box}
.project-gallery-item img{display:block;width:100%;height:260px;object-fit:cover}
.project-gallery-caption{display:block;width:100%;max-width:none;min-width:0;box-sizing:border-box;padding:14px 16px 16px;background:#fff;color:#302a25;white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.45}
.project-gallery-caption strong{display:block;color:#302a25;white-space:normal;overflow-wrap:anywhere;line-height:1.35}
.mps-concept-process{margin:64px 0 20px}
.mps-concept-process__heading{max-width:760px;margin:0 0 24px}
.mps-concept-process__heading h2,.mps-before-after-copy h2{font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.9rem,3.4vw,2.65rem);line-height:1.15;font-weight:500;color:#28231f;margin:8px 0 10px}
.mps-concept-process__heading p,.mps-before-after-copy p{color:#706862;line-height:1.6;margin:0}
.mps-process-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}
.mps-process-gallery__item{min-width:0}
.mps-process-gallery figure{height:100%;margin:0;overflow:hidden;border:1px solid #e7ded3;border-radius:12px;background:#fff;box-shadow:0 6px 20px rgba(47,36,26,.06)}
.mps-process-gallery figure img{display:block;width:100%;aspect-ratio:1.55/1;object-fit:cover}
.mps-process-gallery figcaption{display:flex;min-height:120px;box-sizing:border-box;flex-direction:column;align-items:flex-start;gap:5px;padding:14px 15px 16px;background:#fff;white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.4}
.mps-process-gallery figcaption span,.mps-process-gallery figcaption small{color:#766d65;font-size:.78rem;line-height:1.4}
.mps-process-gallery figcaption strong{display:block;color:#302a25;font-size:1rem;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
.mps-before-after-section{background:#f7f3ed}
.mps-before-after-copy{max-width:820px;margin:0 auto 22px;text-align:center}
.mps-before-after{position:relative;isolation:isolate;overflow:hidden;width:100%;aspect-ratio:16/7;min-height:260px;border:1px solid #e7ded3;border-radius:14px;background:#e7ded3;--mps-before-after-position:50%}
.mps-before-after img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover}
.mps-before-after__before{z-index:1;clip-path:inset(0 calc(100% - var(--mps-before-after-position)) 0 0)}
.mps-before-after__label{position:absolute;z-index:3;top:16px;padding:8px 11px;border-radius:8px;background:#fff;color:#302a25;font-size:.78rem;font-weight:700;box-shadow:0 2px 10px rgba(30,20,12,.13)}
.mps-before-after__label--before{left:16px}.mps-before-after__label--after{right:16px}
.mps-before-after__divider{position:absolute;z-index:2;top:0;bottom:0;left:var(--mps-before-after-position);width:3px;background:#fff;transform:translateX(-50%);pointer-events:none;box-shadow:0 0 0 1px rgba(40,30,20,.16)}
.mps-before-after__range{position:absolute;z-index:4;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.mps-before-after__range:focus-visible{opacity:1;outline:3px solid #a65f39;outline-offset:-5px;border-radius:14px}
.mps-before-after-disclaimer{margin:10px 0 0;text-align:center;color:#766d65;font-size:.82rem}
.btn,button,.wp-element-button{border-radius:8px;transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.btn:hover,button:hover,.wp-element-button:hover{transform:translateY(-1px)}
.btn:focus-visible,button:focus-visible,.wp-element-button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7e492d;outline-offset:3px}
@media(max-width:1000px){.mps-process-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mps-before-after{aspect-ratio:4/3}}
@media(max-width:620px){.mps-concept-process{margin-top:42px}.mps-process-gallery{grid-template-columns:1fr;gap:14px}.mps-process-gallery figure img{aspect-ratio:1.5/1}.mps-process-gallery figcaption{min-height:0}.mps-before-after{aspect-ratio:4/3;min-height:230px}.mps-before-after__label{top:10px;padding:7px 9px;font-size:.7rem}.mps-before-after__label--before{left:10px}.mps-before-after__label--after{right:10px}.btn,button,.wp-element-button{min-height:44px}}
@media(prefers-reduced-motion:reduce){.btn,button,.wp-element-button{transition:none}.btn:hover,button:hover,.wp-element-button:hover{transform:none}}

/* v13.17: wider hero copy, clearer image text and dedicated materials catalogue */
.hero-visual-caption{left:28px;right:28px;bottom:28px;max-width:calc(100% - 56px);padding:18px 20px;border-radius:12px;background:linear-gradient(90deg,rgba(23,17,13,.88),rgba(23,17,13,.58));color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.22)}
.hero-visual-caption span{opacity:1;color:#f3ddc5}
.hero-visual-caption strong{font-size:clamp(1.45rem,2.1vw,2rem);line-height:1.2;max-width:26ch;overflow-wrap:anywhere}
.hero-floating-card{width:min(330px,calc(100% - 34px));padding:22px 24px;right:-10px;top:22px;bottom:auto}
.hero-floating-card strong{font-size:clamp(1.05rem,1.25vw,1.25rem);line-height:1.35;overflow-wrap:anywhere}
.material-story-grid{grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:clamp(36px,5vw,70px)}
.material-story-copy h2{max-width:19ch;font-size:clamp(2.15rem,3.15vw,3.35rem);line-height:1.08;overflow-wrap:normal}
.material-story-copy p{max-width:58ch;line-height:1.65}
.material-story-copy .mps-materials-availability-note{margin:-10px 0 22px;color:#766d65;font-size:.84rem;line-height:1.5}
.mps-materials-visual-note{grid-column:1/-1;margin:-7px 0 0;color:#766d65;font-size:.78rem;line-height:1.45}
.mps-footer-materials-link{display:inline-block;margin-top:8px;color:#985b38;font-weight:700}
.mps-materials-page{background:#fbf8f3;color:#302a25}
.mps-materials-hero{padding:64px 0 68px;background:linear-gradient(130deg,#f3ece3,#fffdf9)}
.mps-materials-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:clamp(38px,6vw,82px);align-items:center}
.mps-materials-hero__copy{max-width:620px}
.mps-materials-hero__copy h1{max-width:16ch;margin:12px 0 18px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2.55rem,4.4vw,4.5rem);font-weight:500;letter-spacing:-.035em;line-height:1.06;color:#211d19}
.mps-materials-hero__copy p{max-width:58ch;color:#6c5f55;font-size:1.05rem;line-height:1.7;margin-bottom:24px}
.mps-materials-hero__image{position:relative;margin:0;overflow:hidden;border-radius:20px;background:#e9ded1;box-shadow:0 22px 55px rgba(55,39,27,.13)}
.mps-materials-hero__image img{display:block;width:100%;aspect-ratio:1.35/1;object-fit:cover}
.mps-materials-hero__image figcaption{padding:11px 15px;background:#fff;color:#65594e;font-size:.78rem;line-height:1.45}
.mps-materials-catalogue{background:#fff}
.mps-materials-heading{max-width:820px;margin:0 0 32px}
.mps-materials-heading h2{max-width:24ch;margin:8px 0 12px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,3.3vw,3.2rem);font-weight:500;line-height:1.12;color:#211d19}
.mps-materials-heading p{color:#6c5f55;line-height:1.6}
.mps-materials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mps-material-card{min-width:0;overflow:hidden;border:1px solid #e8dfd5;border-radius:12px;background:#fff;box-shadow:0 8px 22px rgba(53,38,26,.05)}
.mps-material-card figure,.mps-material-card__placeholder{height:220px;margin:0;overflow:hidden;background:linear-gradient(135deg,#f1e9df,#dfcdb9)}
.mps-material-card figure img{display:block;width:100%;height:100%;object-fit:cover}
.mps-material-card__placeholder{display:grid;place-items:center;color:#75695e;font-size:.85rem}
.mps-material-card__copy{padding:19px 20px 21px}
.mps-material-card h3{margin:0 0 9px;font-family:Georgia,'Times New Roman',serif;font-size:1.4rem;font-weight:500;color:#2c241e}
.mps-material-card p{min-height:3.2em;margin:0 0 14px;color:#6f665d;line-height:1.55}
.mps-material-card__copy>span{font-size:.78rem;font-weight:700;color:#985b38}
.mps-materials-note{margin-top:24px;padding:16px 18px;border-left:3px solid #a65f39;background:#f7f2eb;color:#62574d;line-height:1.55}
.mps-materials-cta-wrap{padding-top:36px}
.mps-materials-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px 38px;border-radius:14px;background:#f2e9de}
.mps-materials-cta h2{max-width:25ch;margin:8px 0 9px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.8rem,3vw,2.7rem);font-weight:500;line-height:1.12;color:#28211b}
.mps-materials-cta p{max-width:62ch;margin:0;color:#6c5f55;line-height:1.55}
@media(max-width:1000px){.mps-materials-hero__grid{grid-template-columns:1fr 1fr;gap:32px}.mps-materials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.material-story-grid{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr)}}
@media(max-width:820px){.mps-materials-hero__grid{grid-template-columns:1fr}.mps-materials-hero__copy{max-width:740px}.mps-materials-hero__image img{aspect-ratio:1.7/1}.material-story-grid{grid-template-columns:1fr}.material-story-copy h2{max-width:24ch}.hero-floating-card{right:10px}}
@media(max-width:620px){.mps-materials-hero{padding:40px 0 44px}.mps-materials-hero__copy h1{max-width:18ch;font-size:clamp(2.35rem,10vw,3rem)}.mps-materials-hero__image img{aspect-ratio:1.2/1}.mps-materials-grid{grid-template-columns:1fr}.mps-material-card figure,.mps-material-card__placeholder{height:215px}.mps-materials-cta{display:block;padding:25px 22px}.mps-materials-cta>.btn{display:inline-flex;margin-top:20px}.material-story-copy h2{font-size:clamp(2.1rem,8vw,2.7rem)}.hero-visual-caption{left:14px;right:14px;bottom:20px;max-width:calc(100% - 28px);padding:14px 15px}.hero-visual-caption strong{font-size:1.38rem}.hero-floating-card{left:18px;right:18px;width:auto}}
