: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; }
.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}}
