.mdl-project-breadcrumbs {
  width: min(1240px, calc(100% - 64px));
  margin: 0 auto;
  padding: 112px 0 0;
  color: #282724;
  font-family: "DM Sans", Arial, sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .16em;
  line-height: 1.4;
  text-transform: uppercase;
}
.mdl-project-breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; }
.mdl-project-breadcrumbs li:not(:last-child)::after { content:"/"; margin-left:8px; opacity:.3; }
.mdl-project-breadcrumbs a { color:inherit; text-decoration:none; opacity:.48; transition:opacity .25s ease; }
.mdl-project-breadcrumbs a:hover, .mdl-project-breadcrumbs a:focus-visible { opacity:1; }

.mdl-local-proof {
  --proof-ink:#171715;
  --proof-paper:#f0ede7;
  --proof-muted:rgba(240,237,231,.62);
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(84px,10vw,152px) clamp(24px,4vw,64px);
  background:var(--proof-ink);
  color:var(--proof-paper);
}
.mdl-local-proof::before {
  content:"";
  position:absolute;
  z-index:-1;
  top:-25vw;
  right:-18vw;
  width:54vw;
  height:54vw;
  border:1px solid rgba(240,237,231,.08);
  border-radius:50%;
  pointer-events:none;
}
.mdl-local-proof, .mdl-local-proof * { box-sizing:border-box; }
.mdl-local-proof__frame { width:min(1240px,100%); margin:0 auto; }
.mdl-local-proof__intro {
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(280px,.45fr);
  gap:clamp(44px,9vw,140px);
  align-items:end;
  padding-bottom:clamp(54px,7vw,94px);
  border-bottom:1px solid rgba(240,237,231,.18);
}
.mdl-local-proof__eyebrow {
  display:flex;
  gap:16px;
  align-items:center;
  margin-bottom:clamp(24px,4vw,46px);
  color:var(--proof-muted);
  font-family:"DM Sans",Arial,sans-serif;
  font-size:9px;
  font-weight:600;
  letter-spacing:.24em;
  text-transform:uppercase;
}
.mdl-local-proof__eyebrow::before { content:""; width:34px; height:1px; background:currentColor; }
.mdl-local-proof h2 {
  max-width:830px;
  margin:0;
  color:inherit;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(54px,7.15vw,104px);
  font-weight:400;
  letter-spacing:-.047em;
  line-height:.88;
  text-wrap:balance;
}
.mdl-local-proof__summary {
  max-width:390px;
  margin:0 0 5px;
  color:var(--proof-muted);
  font-family:"DM Sans",Arial,sans-serif;
  font-size:clamp(13px,1.15vw,15px);
  line-height:1.8;
}
.mdl-local-proof__details {
  max-width:920px;
  padding-top:clamp(48px,6vw,82px);
}
.mdl-project-facts {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,3vw,42px);
  margin:0 0 clamp(38px,5vw,62px);
}
.mdl-project-facts div { min-width:0; padding-top:16px; border-top:1px solid rgba(240,237,231,.22); }
.mdl-project-facts dt {
  margin-bottom:11px;
  color:var(--proof-muted);
  font-family:"DM Sans",Arial,sans-serif;
  font-size:8px;
  font-weight:600;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.mdl-project-facts dd {
  margin:0;
  color:inherit;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(20px,2vw,29px);
  line-height:1.08;
  overflow-wrap:break-word;
}
.mdl-service-link {
  display:inline-flex;
  gap:14px;
  align-items:center;
  color:inherit;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  line-height:1.45;
  text-decoration:none;
  text-transform:uppercase;
}
.mdl-service-link::after { content:"\2192"; flex:0 0 auto; font-size:18px; font-weight:400; transition:transform .25s ease; }
.mdl-service-link:hover::after, .mdl-service-link:focus-visible::after { transform:translateX(6px); }

.mdl-reviews { margin-top:clamp(96px,12vw,166px); }
.mdl-reviews__header {
  display:flex;
  justify-content:space-between;
  gap:32px;
  align-items:flex-end;
  padding-bottom:28px;
  border-bottom:1px solid rgba(240,237,231,.18);
}
.mdl-reviews__kicker {
  display:block;
  margin-bottom:12px;
  color:var(--proof-muted);
  font-family:"DM Sans",Arial,sans-serif;
  font-size:8px;
  font-weight:600;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.mdl-reviews h3 {
  margin:0;
  color:inherit;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(40px,5vw,66px);
  font-weight:400;
  letter-spacing:-.035em;
  line-height:.95;
}
.mdl-reviews__google {
  display:inline-flex;
  flex:0 0 auto;
  gap:11px;
  align-items:center;
  padding:12px 0;
  color:inherit;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:9px;
  font-weight:600;
  letter-spacing:.1em;
  text-decoration:none;
  text-transform:uppercase;
}
.mdl-google-mark {
  display:grid;
  width:29px;
  height:29px;
  place-items:center;
  border-radius:50%;
  background:#fff;
  color:#4285f4;
  font-family:Arial,sans-serif;
  font-size:16px;
  font-weight:700;
}
.mdl-reviews__track {
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(360px,510px);
  gap:16px;
  min-width:0;
  margin-top:32px;
  padding:0 1px 8px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:1px;
  overscroll-behavior-inline:contain;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x pan-y pinch-zoom;
  cursor:grab;
}
.mdl-reviews__track::-webkit-scrollbar { display:none; }
.mdl-reviews__track.is-dragging { cursor:grabbing; scroll-snap-type:none; user-select:none; }
.mdl-review-card {
  display:flex;
  min-width:0;
  min-height:360px;
  flex-direction:column;
  padding:34px;
  border:1px solid rgba(240,237,231,.18);
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.mdl-review-card__stars { display:flex; gap:4px; color:#d3a13a; }
.mdl-review-card__stars svg { width:16px; height:16px; fill:currentColor; }
.mdl-review-card blockquote {
  max-width:18ch;
  margin:clamp(38px,5vw,64px) 0 42px;
  color:inherit;
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:clamp(27px,2.45vw,35px);
  font-style:normal;
  font-weight:400;
  letter-spacing:-.025em;
  line-height:1.08;
}
.mdl-review-card footer {
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-end;
  margin-top:auto;
  padding-top:20px;
  border-top:1px solid rgba(240,237,231,.14);
  font-family:"DM Sans",Arial,sans-serif;
}
.mdl-review-card footer strong {
  color:inherit;
  font-size:10px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.mdl-review-card footer span {
  max-width:190px;
  color:var(--proof-muted);
  font-size:8px;
  letter-spacing:.11em;
  line-height:1.5;
  text-align:right;
  text-transform:uppercase;
}
.mdl-reviews__footer {
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:center;
  margin-top:17px;
}
.mdl-reviews__controls { display:flex; gap:8px; }
.mdl-reviews__button {
  display:grid;
  width:44px;
  height:44px;
  padding:0;
  place-items:center;
  border:1px solid rgba(240,237,231,.26);
  border-radius:50%;
  background:transparent;
  color:var(--proof-paper);
  font:400 18px/1 Arial,sans-serif;
  cursor:pointer;
  appearance:none;
  transition:background-color .25s ease,color .25s ease,opacity .25s ease;
}
.mdl-reviews__button:hover:not(:disabled),
.mdl-reviews__button:focus-visible:not(:disabled) {
  background:var(--proof-paper);
  color:var(--proof-ink);
}
.mdl-reviews__button:disabled { opacity:.24; cursor:default; }
.mdl-reviews__hint {
  display:flex;
  gap:12px;
  align-items:center;
  margin-top:17px;
  color:var(--proof-muted);
  font-family:"DM Sans",Arial,sans-serif;
  font-size:8px;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.mdl-reviews__hint span { width:42px; height:1px; background:currentColor; }

.mdl-related-projects {
  display:flex;
  flex-wrap:wrap;
  gap:13px 28px;
  margin-top:clamp(54px,7vw,90px);
  padding-top:23px;
  border-top:1px solid rgba(240,237,231,.18);
  color:var(--proof-muted);
  font-family:"DM Sans",Arial,sans-serif;
  font-size:9px;
  letter-spacing:.13em;
  line-height:1.5;
  text-transform:uppercase;
}
.mdl-related-projects span { opacity:.64; }
.mdl-related-projects a { color:var(--proof-paper); text-decoration-color:rgba(240,237,231,.28); text-underline-offset:5px; transition:text-decoration-color .25s ease; }
.mdl-related-projects a:hover, .mdl-related-projects a:focus-visible { text-decoration-color:currentColor; }

@media (max-width:900px) {
  .mdl-local-proof__intro { grid-template-columns:1fr; gap:32px; }
  .mdl-local-proof__summary { max-width:620px; }
  .mdl-local-proof__details { max-width:none; }
  .mdl-reviews__track { grid-auto-columns:minmax(340px,64vw); }
}
@media (max-width:600px) {
  .mdl-project-breadcrumbs { width:min(100% - 32px,1240px); padding-top:88px; font-size:8px; letter-spacing:.12em; }
  .mdl-local-proof { padding:68px 18px 74px; }
  .mdl-local-proof::before { top:-28vw; right:-45vw; width:105vw; height:105vw; }
  .mdl-local-proof__eyebrow { gap:12px; margin-bottom:26px; font-size:8px; letter-spacing:.17em; }
  .mdl-local-proof__eyebrow::before { width:24px; }
  .mdl-local-proof h2 { max-width:11ch; font-size:clamp(44px,13vw,62px); line-height:.91; }
  .mdl-local-proof__intro { gap:27px; padding-bottom:46px; }
  .mdl-local-proof__summary { font-size:13px; line-height:1.7; }
  .mdl-local-proof__details { padding-top:42px; }
  .mdl-project-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:23px 18px; margin-bottom:38px; }
  .mdl-project-facts div:last-child { grid-column:1 / -1; }
  .mdl-project-facts dd { font-size:22px; }
  .mdl-service-link { max-width:290px; font-size:9px; }
  .mdl-reviews { margin-top:82px; }
  .mdl-reviews__header { display:grid; gap:24px; align-items:start; padding-bottom:22px; }
  .mdl-reviews h3 { font-size:44px; }
  .mdl-reviews__google { width:max-content; padding:0; font-size:8px; }
  .mdl-reviews__track {
    grid-auto-columns:calc(100vw - 52px);
    gap:12px;
    margin-right:-18px;
    padding-right:18px;
    scroll-padding-inline:1px;
  }
  .mdl-review-card { min-height:330px; padding:24px; }
  .mdl-review-card blockquote { margin:34px 0 34px; font-size:27px; }
  .mdl-review-card footer { display:grid; gap:7px; align-items:start; }
  .mdl-review-card footer span { max-width:none; text-align:left; }
  .mdl-reviews__footer { margin-top:15px; }
  .mdl-reviews__button { width:42px; height:42px; }
  .mdl-reviews__hint { max-width:145px; line-height:1.5; }
  .mdl-related-projects { display:grid; gap:14px; margin-top:52px; }
}
@media (prefers-reduced-motion:reduce) {
  .mdl-service-link::after,
  .mdl-reviews__button { transition:none; }
}