/* Keep the full portfolio easy to find, with no automated pricing. */
.home-patio-showcase { padding-block: 90px; }
.home-patio-showcase h2 { font-family: var(--display); font-size: clamp(46px, 5vw, 72px); line-height: 1.02; margin: 0; }
.home-patio-intro { max-width: 440px; }
.home-patio-intro p { color: #555; font-size: 16px; line-height: 1.75; }
.home-patio-intro .text-link { color: #171717; font-size: 14px; }
.home-patio-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 44px 28px; }
.home-patio-card { grid-column: span 2; min-width: 0; }
.home-patio-card:nth-last-child(-n+2) { grid-column: span 3; }
.home-patio-card .project-card { display: block; width: 100%; color: #181818; text-align: left; }
.home-patio-photo { display: block; position: relative; aspect-ratio: 4 / 3; overflow: hidden; background: #d9d9d5; }
.home-patio-photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.home-patio-card .project-card:hover img { transform: scale(1.025); }
.home-patio-photo > span { position: absolute; right: 12px; bottom: 12px; width: 36px; height: 36px; display: grid; place-items: center; background: #151515d9; color: white; font-size: 23px; }
.home-patio-label { display: block; color: #934149; font-size: 10px; line-height: 1.6; letter-spacing: 1px; margin: 19px 0 9px; }
.home-patio-card strong { display: block; font-family: var(--display); font-size: 30px; font-weight: 600; line-height: 1.08; }
.home-patio-card > .text-link { display: flex; width: fit-content; color: #444; font-size: 13px; margin-top: 16px; }
.home-patio-note { color: #666; font-size: 13px; margin: 35px 0 0; }
.home-patio-showcase + .selected-work { border-top: 1px solid #d0d0cb; }
.home-lighting-film { padding-block: 0 85px; }
.home-lighting-film > a { display: grid; grid-template-columns: 1.25fr 1fr; background: #1e1e1e; align-items: center; }
.home-lighting-film img { display: block; width: 100%; height: 100%; object-fit: cover; aspect-ratio: 16 / 9; }
.home-lighting-film > a > span { display: block; padding: 38px; }
.home-lighting-film strong { display: block; font-family: var(--display); font-size: clamp(30px, 3vw, 48px); font-weight: 600; line-height: 1.08; margin-bottom: 25px; }
.home-lighting-film .eyebrow { font-size: 10px; color: #d8a0a4; line-height: 1.6; }
.home-lighting-film .text-link { font-size: 14px; }
.contractor-name { font-weight: inherit; }
@media (max-width: 1200px) and (min-width: 901px) {
  .header .phone { display: none; }
  .header nav { gap: 23px; }
}
@media (max-width: 900px) {
  .home-patio-showcase .section-heading { flex-direction: column; align-items: flex-start; gap: 28px; }
  .home-patio-intro { max-width: 620px; }
  .home-patio-grid { gap: 34px 22px; }
  .home-patio-card, .home-patio-card:nth-last-child(-n+2) { grid-column: span 3; }
  .home-patio-card:first-child { grid-column: span 6; }
  .home-patio-card:first-child .home-patio-photo { aspect-ratio: 16 / 10; }
  .home-lighting-film > a > span { padding: 25px; }
}
@media (max-width: 650px) {
  .home-patio-showcase { padding-block: 60px; }
  .home-patio-showcase h2 { font-size: 48px; }
  .home-patio-grid { display: grid; grid-template-columns: 1fr; gap: 34px; }
  .home-patio-card, .home-patio-card:first-child, .home-patio-card:nth-last-child(-n+2) { grid-column: auto; }
  .home-patio-card:first-child .home-patio-photo, .home-patio-photo { aspect-ratio: 4 / 3; }
  .home-patio-card strong { font-size: 29px; }
  .home-patio-intro p { font-size: 15px; }
  .home-lighting-film { padding-bottom: 60px; }
  .home-lighting-film > a { grid-template-columns: 1fr; }
  .home-lighting-film > a > span { padding: 28px 24px; }
  .home-lighting-film strong { font-size: 37px; }
}
@media (prefers-reduced-motion: reduce) {
  .home-patio-photo img { transition: none; }
}
