/* Renovation: actual projects, the work people need, then ways to get in touch. */
.renovation-study { background: #fff; }
.renovation-study .wf-main { width: min(1160px, calc(100% - 80px)); padding-bottom: 64px; }
.renovation-study .wf-breadcrumbs { padding-top: 24px; font-size: 11px; }
.renovation-study .renovation-opening { max-width: 850px; padding: 48px 0 62px; }
.renovation-study .renovation-opening__eyebrow { margin: 0 0 16px; font-size: 11px; color: #647460; letter-spacing: .14em; }
.renovation-study .renovation-opening h1 { margin: 0 0 25px; font: 500 15px/1.8 var(--sans); letter-spacing: .04em; }
.renovation-study .renovation-opening__message { margin: 0 0 24px; font: 400 clamp(28px, 3.5vw, 42px)/1.7 var(--serif); letter-spacing: .015em; }
.renovation-study .renovation-opening__message > span { display: block; }
.renovation-study .renovation-opening__lead { max-width: 720px; font-size: 16px; line-height: 2; color: #596158; }
.renovation-study .renovation-opening__note { margin-bottom: 12px; }
.renovation-study .wf-section { margin: 0; padding: 54px 0; border-top: 1px solid #dce1da; scroll-margin-top: calc(var(--header-height) + 22px); }
.renovation-study .wf-section-heading { max-width: 800px; margin-bottom: 30px; }
.renovation-study .wf-section-heading > p { margin: 0 0 14px; color: #647460; font-size: 11px; letter-spacing: .13em; }
.renovation-study .wf-section-heading h2 { margin: 0; font: 400 clamp(24px, 2.8vw, 32px)/1.7 var(--serif); letter-spacing: .015em; text-wrap: balance; }
.renovation-study .wf-section-heading > span { display: block; max-width: 750px; margin-top: 16px; color: #596158; font-size: 15px; line-height: 1.95; }
.renovation-study .wf-card-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 36px; }
.renovation-study .wf-card-grid > article { min-width: 0; background: #fff; border: 0; border-bottom: 1px solid #dce1da; }
.renovation-study .wf-card-grid .wf-card-image { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.renovation-study .wf-card-grid > article > div { padding: 22px 0 10px; }
.renovation-study .wf-card-grid small { color: #647460; font-size: 12px; line-height: 1.8; letter-spacing: .04em; }
.renovation-study .wf-card-grid h3 { margin: 10px 0 12px; font: 400 24px/1.65 var(--serif); text-wrap: balance; }
.renovation-study .wf-card-grid a { display: flex; justify-content: space-between; align-items: center; min-height: 44px; margin: 0; padding: 10px 0; font-size: 14px; }
.renovation-study .renovation-services__grid { margin: 0; gap: 34px; }
.renovation-study .renovation-service-card { border: 0; border-bottom: 1px solid #dce1da; background: #fff; }
.renovation-study .renovation-service-card__copy { padding: 20px 0 26px; }
.renovation-study .renovation-service-card__copy h3,
.renovation-study .renovation-service-card__copy h4 { margin: 0 0 10px; font: 400 24px/1.6 var(--serif); text-wrap: balance; }
.renovation-study .renovation-service-card__copy p { font-size: 15px; line-height: 1.95; color: #596158; }
.renovation-study .renovation-living-note { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 16px 40px; margin-top: 32px; padding: 26px 28px; background: #f5f7f2; }
.renovation-study .renovation-living-note h3 { margin: 0; font: 500 17px/1.8 var(--sans); }
.renovation-study .renovation-living-note p { margin: 0; color: #596158; font-size: 15px; line-height: 1.95; }
.renovation-study .renovation-services__link { min-height: 44px; margin: 16px 0 0; padding: 10px 0; font-size: 14px; line-height: 1.8; }
.renovation-study .estate-panel { display: block; }
.renovation-study .estate-panel__intro { max-width: 800px; margin-bottom: 30px; }
.renovation-study .estate-panel__intro .wf-section-heading { margin-bottom: 18px; }
.renovation-study .estate-panel__layout { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(0,.95fr); gap: 48px; align-items: center; }
.renovation-study .estate-panel__intro > p { color: #596158; font-size: 15px; line-height: 1.95; }
.renovation-study .estate-panel__photo { margin: 0; }
.renovation-study .estate-panel__photo img { width: 100%; aspect-ratio: 4 / 3; object-position: center 30%; }
.renovation-study .estate-panel__photo figcaption { font-size: 12px; line-height: 1.8; color: #697164; }
.renovation-study .estate-panel__details dl { margin-bottom: 22px; }
.renovation-study .estate-panel__details dl > div { padding: 22px 0; border-color: #dce1da; }
.renovation-study .estate-panel__details dl > div:first-child { padding-top: 0; }
.renovation-study .estate-panel__details dt { font: 500 18px/1.8 var(--sans); }
.renovation-study .estate-panel__details dd { font-size: 15px; line-height: 1.95; color: #596158; }
.renovation-study .estate-link { min-height: 48px; gap: 16px; font-size: 14px; line-height: 1.9; }
.renovation-study .estate-link--primary { background: #fff; border-color: #7b8974; }
.renovation-study .wf-faq { max-width: 900px; }
.renovation-study .wf-faq details { border-color: #dce1da; }
.renovation-study .wf-faq summary { gap: 22px; padding: 24px 0; font-size: 16px; line-height: 1.8; }
.renovation-study .wf-faq details > p { padding: 0 36px 24px 0; color: #596158; font-size: 15px; line-height: 1.95; }
.renovation-study .renovation-contact { padding: 42px; background: #f2f5ef; border: 0; }
.renovation-study .renovation-contact .wf-section-heading { max-width: none; margin-bottom: 18px; }
.renovation-study .renovation-contact__lead { max-width: 770px; margin: 0; color: #596158; font-size: 15px; line-height: 1.95; }
.renovation-study .renovation-contact__methods { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-top: 28px; }
.renovation-study .renovation-contact__methods > a { display: flex; min-width: 0; min-height: 142px; flex-direction: column; align-items: flex-start; justify-content: center; gap: 7px; padding: 20px; color: #293e30; background: #fff; border: 1px solid #dce1da; }
.renovation-study .renovation-contact__methods span { font-size: 13px; line-height: 1.8; }
.renovation-study .renovation-contact__methods strong { font-weight: 500; font-size: 18px; line-height: 1.65; }
.renovation-study .renovation-contact__methods small { font-size: 12px; line-height: 1.8; }
.renovation-study .renovation-contact__methods .renovation-contact__form { color: #fff; background: #293e30; border-color: #293e30; }
.renovation-study .renovation-contact__methods .renovation-contact__line { border-color: #7d9a78; }
.renovation-study #contact, .renovation-study #renovation-consultation { scroll-margin-top: calc(var(--header-height) + 22px); }
.renovation-study main a:focus-visible { outline: 2px solid #476750; outline-offset: 4px; }
@media (hover:hover) {
  .renovation-study .wf-card-grid a:hover, .renovation-study .renovation-services__link:hover { color: #718765; }
  .renovation-study .renovation-contact__methods > a:hover { border-color: #6e8861; }
  .renovation-study .renovation-contact__methods .renovation-contact__form:hover { background: #40573b; }
}
@media (max-width: 1000px) {
  .renovation-study .wf-main { width: calc(100% - 48px); }
  .renovation-study .renovation-contact { padding: 30px; }
  .renovation-study .renovation-contact__methods { gap: 12px; }
  .renovation-study .renovation-contact__methods > a { padding: 16px; }
  .renovation-study .renovation-contact__methods strong { font-size: 17px; }
}
@media (max-width: 767px) {
  .renovation-study .wf-main { width: calc(100% - 44px); padding-bottom: 40px; }
  .renovation-study .wf-breadcrumbs { padding-top: 20px; font-size: 10px; }
  .renovation-study .renovation-opening { padding: 30px 0 38px; }
  .renovation-study .renovation-opening h1 { margin-bottom: 22px; font-size: 14px; }
  .renovation-study .renovation-opening__message { margin-bottom: 20px; font-size: clamp(25px,6.7vw,31px); line-height: 1.75; letter-spacing: 0; }
  .renovation-study .renovation-opening__message > span { display: inline; }
  .renovation-study .renovation-opening__lead { font-size: 15px; line-height: 1.95; }
  .renovation-study .wf-section { padding: 36px 0; }
  .renovation-study .wf-section-heading { margin-bottom: 24px; }
  .renovation-study .wf-section-heading h2 { font-size: 25px; line-height: 1.7; }
  .renovation-study .wf-section-heading > span { margin-top: 14px; font-size: 14px; }
  .renovation-study .wf-card-grid { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .renovation-study .wf-card-grid > article > div { padding: 18px 0 8px; }
  .renovation-study .wf-card-grid h3 { font-size: 22px; }
  .renovation-study .renovation-services__grid { grid-template-columns: minmax(0,1fr); gap: 26px; }
  .renovation-study .renovation-service-card__copy { padding: 18px 0 22px; }
  .renovation-study .renovation-service-card__copy h3,
  .renovation-study .renovation-service-card__copy h4 { font-size: 23px; }
  .renovation-study .renovation-living-note { grid-template-columns: minmax(0,1fr); gap: 10px; margin-top: 26px; padding: 20px; }
  .renovation-study .renovation-living-note h3 { font-size: 16px; }
  .renovation-study .renovation-living-note p { font-size: 14px; }
  .renovation-study .estate-panel__intro { margin-bottom: 24px; }
  .renovation-study .estate-panel__layout { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .renovation-study .estate-panel__details dt { font-size: 17px; }
  .renovation-study .estate-panel__details dl > div { padding: 18px 0; }
  .renovation-study .wf-faq summary { padding: 20px 0; font-size: 15px; }
  .renovation-study .wf-faq details > p { padding: 0 0 20px; font-size: 14px; }
  .renovation-study .renovation-contact { margin: 0 -22px; padding: 30px 22px; }
  .renovation-study .renovation-contact .wf-section-heading h2 { font-size: 24px; }
  .renovation-study .renovation-contact__lead { font-size: 14px; }
  .renovation-study .renovation-contact__methods { grid-template-columns: minmax(0,1fr); gap: 12px; margin-top: 24px; }
  .renovation-study .renovation-contact__methods > a { min-height: 0; gap: 4px; padding: 18px 20px; }
  .renovation-study .renovation-contact__methods strong { font-size: 18px; }
}
@media (max-width: 359px) {
  .renovation-study .renovation-opening__message { font-size: 23px; }
  .renovation-study .wf-section-heading h2 { font-size: 23px; }
  .renovation-study .renovation-contact .wf-section-heading h2 { font-size: 22px; }
}

.renovation-study .renovation-opening__message > span { display: block; }
.renovation-study .wf-section-heading h2 > span { display: inline-block; }
