/* Revelation Renovation: black, white and the original brand red. */
@font-face {
  font-family: Revelation Display;
  src: url('/assets/deef75d23da401de02.woff2') format('woff2');
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
:root {
  --red: #8a2825;
  --red-hover: #a3332f;
  --ink: #f5f5f5;
  --charcoal: #000000;
  --cream: #000000;
  --bone: #101010;
  --muted: #a8a8a8;
  --line: #2b2b2b;
  color-scheme: dark;
}
body {background: #000; color: #f5f5f5; font-family: Arial, Helvetica, sans-serif; line-height: 1.65;}
h1, h2, h3, h1 em, h2 em {font-family: Revelation Display, Arial, sans-serif; font-style: normal; font-weight: 700; letter-spacing: -.025em;}
h2 {font-size: clamp(38px, 4vw, 56px); line-height: 1.06;}
h1 em, h2 em {color: inherit;}
button, input, textarea {font-family: inherit;}
.section {padding-block: 85px;}
.eyebrow, .eyebrow.light {color: #bfbfbf; font-size: 10px; letter-spacing: .17em; font-weight: 700;}
.tiny-label {color: #a5a5a5;}
.brand-icon {width: 24px; height: 24px; fill: currentColor; stroke: none; flex: 0 0 auto;}
.button {font-family: Arial, Helvetica, sans-serif; font-weight: 700; border-radius: 2px; font-size: 12px; letter-spacing: .015em;}
.button-red, .button-red:hover {box-shadow: none;}
.button-outline {color: #fff; border-color: #555; background: transparent;}
.button-outline:hover {color: #fff; background: #191919; border-color: #999;}
.text-link {font-family: Arial, Helvetica, sans-serif; font-size: 13px;}
.topline, .site-header, .site-footer, .mobile-navigation {background: #000; color: #eee;}
.topline {color: #a7a7a7; letter-spacing: .035em;}
.topline a {color: #ddd;}
.site-header {backdrop-filter: none;}
.brand img, .footer-brand img {mix-blend-mode: normal;}
.desktop-nav a {font-size: 12px; color: #bbb;}
.invoice-link {color: #aaa;}
.mobile-navigation a span {color: #888;}
.header-cta {font-size: 11px;}

/* The original photograph is framed with SVG; the image file is untouched. */
.hero--family {position: relative; isolation: isolate; min-height: 610px; padding: 0; display: flex; flex-direction: column; background: #000; color: #fff;}
.hero-family-photo {position: absolute; inset: 0; width: 100%; height: 100%; z-index: -2; filter: brightness(.78) contrast(1.02);}
.hero-shade {position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(0,0,0,.82),rgba(0,0,0,.57) 56%,rgba(0,0,0,.22)),linear-gradient(0deg,#000 0%,transparent 50%);}
.hero-content {padding-top: 70px; padding-bottom: 40px;}
.hero--family .eyebrow {font-size: 10px; color: #ddd; margin: 0 0 23px;}
.hero--family h1 {font-family: Revelation Display, Arial, sans-serif; font-size: clamp(57px,6.05vw,88px); font-weight: 700; line-height: 1.02; letter-spacing: -.035em; margin: 0; max-width: 1080px; text-wrap: balance;}
.hero--family h1 span {color: #e2e2e2;}
.hero--family .hero-description {max-width: 585px; color: #e0e0e0; font-size: 15px; line-height: 1.8; margin-top: 25px;}
.hero--family .hero-actions {display: flex; flex-direction: row; align-items: center; margin-top: 29px; gap: 14px;}
.hero--family .hero-actions .button {padding: 17px 22px; min-height: 54px; font-size: 12px; gap: 20px;}
.hero--family .button-outline {border-color: #aaa; background: #0002;}
.hero--family .button-outline:hover {background: #0009;}
.hero-signoff {display: flex; justify-content: space-between; align-items: flex-end; gap: 30px; margin-top: auto; padding-top: 20px; padding-bottom: 27px; border-top: 1px solid #ffffff30; font-size: 11px; color: #dedede;}
.hero-signoff p>span {color: #aaa; font-size: 10px;}
.hero-signoff .hero-scripture {text-align: right; font-size: 16px; font-weight: 600; line-height: 1.6;}
.hero-scripture>span {display: block; text-transform: uppercase; letter-spacing: .13em; margin-bottom: 4px;}

.review-band {background: #000; padding-block: 34px 18px;}
.review-band .review-card {display: grid; grid-template-columns: 190px minmax(0,1fr) auto; align-items: center; gap: 32px; background: #0b0b0b; border: 1px solid #303030; padding: 30px 34px; border-radius: 2px; box-shadow: none; color: #fff; backdrop-filter: none;}
.google-badge {border-right: 1px solid #343434; padding-right: 28px; display: flex; flex-direction: column; align-items: flex-start;}
.google-brand {display: inline-flex; gap: 10px; align-items: center; font-size: 21px; font-weight: 600; line-height: 1.4;}
.google-icon {width: 28px; height: 28px;}
.rating-stars {font-size: 22px; color: #e9b651; letter-spacing: 2px; margin-top: 13px; line-height: 1.3;}
.rating-value {display: flex; gap: 10px; align-items: flex-end; margin-top: 5px;}
.rating-value strong {font-family: Revelation Display, Arial, sans-serif; font-size: 37px; font-weight: 700; line-height: 1;}
.rating-value>span {font-size: 10px; line-height: 1.35; max-width: 66px; color: #aaa; padding-bottom: 3px;}
.review-copy .tiny-label {font-size: 9px; letter-spacing: .15em; color: #a5a5a5;}
.review-copy h2 {font-size: 29px; line-height: 1.15; margin-top: 9px; font-weight: 700;}
.review-viewport {min-height: 79px; margin-top: 16px;}
.review-slide blockquote {font-family: Arial, Helvetica, sans-serif; font-size: 16px; font-style: normal; line-height: 1.5; letter-spacing: 0; color: #c8c8c8; max-width: 490px;}
.review-slide cite {font-family: Arial, Helvetica, sans-serif; color: #a9a9a9; font-size: 10px; margin-top: 9px; font-weight: 400;}
.review-slide cite a {gap: 5px;}
.review-slide cite .icon {color: #999; width: 10px; height: 10px;}
.review-slide cite small {display: none;}
.review-actions {display: flex; flex-direction: column; align-items: flex-end; gap: 18px;}
.review-actions>.button {font-size: 10px; gap: 14px; min-height: 49px; padding: 15px 17px;}
.review-actions>.button>.icon {width: 16px; height: 16px;}
.review-controls {gap: 8px;}
.review-controls>span {color: #999; font-size: 10px; margin-right: 6px;}
.review-controls .icon-button {color: #ddd; border-color: #444; width: 36px; height: 36px;}
.review-controls .icon-button:hover {color: #fff; background: #252525;}

.partners {background: #000; padding-top: 64px; padding-bottom: 72px; border-bottom: 1px solid #242424;}
.partners-heading {align-items: flex-end; margin-bottom: 34px; gap: 30px;}
.partners h2 {font-size: clamp(38px,4.15vw,58px); line-height: 1.06; font-weight: 700; letter-spacing: -.025em;}
.partners-tagline {font-size: 17px; color: #a6a6a6; line-height: 1.5; margin-top: 13px;}
.partner-controls .text-link {color: #bcbcbc; font-size: 10px;}
.partner-card {width: 250px; flex-basis: 250px; height: 155px; background: #090909; border-color: #282828; border-radius: 2px; padding: 20px 23px 16px; gap: 15px;}
.partner-card img {filter: grayscale(1) invert(1) brightness(2); mix-blend-mode: screen; opacity: .95; width: calc(var(--logo-width,180px) * 1.08); height: 88px; max-height: 100px;}
.partner-card:hover {border-color: #666; box-shadow: none;}
.partner-card:hover img {filter: grayscale(1) invert(1) brightness(2); opacity: 1;}
.partner-card figcaption {font-size: 9px; color: #a0a0a0; max-width: 210px;}
.partner-group {gap: 16px; padding-right: 16px;}
.all-partners {padding-top: 0;}

.services, .work, .about, .videos, .contact {background: #000; color: #f5f5f5;}
.section-heading {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 17px; text-align: center;}
.section-heading .eyebrow {justify-content: center;}
.section-heading>p {max-width: 650px; margin: 0; padding: 0; color: #a8a8a8; font-size: 14px; line-height: 1.75;}
.service-cards {column-gap: 40px;}
.service-cards article {border-color: #363636; padding-block: 29px 34px;}
.service-card-number {color: #b5534d; font-size: 11px;}
.service-cards h3 {font-size: 29px; font-weight: 700; line-height: 1.1; letter-spacing: -.015em;}
.service-cards p {font-size: 13px; color: #aaa; line-height: 1.8; max-width: 330px;}
.services-bottom {border-color: #303030; color: #aaa;}
.services-bottom .text-link {color: #eee;}
.work {border-top: 1px solid #242424;}
.gallery-toolbar {flex-direction: column; align-items: center; justify-content: center; gap: 16px; text-align: center;}
.gallery-filters {justify-content: center;}
.filter {color: #bdbdbd; font-size: 11px;}
.gallery-filters .filter.is-active {background: #fff; color: #000; border-color: #fff;}
.gallery-filters .filter:hover, .filter:not(.is-active):hover {border-color: #666;}
.gallery-count {display: block; color: #999;}
.project-grid {display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: center; gap: 32px 24px;}
.project-card {flex: 0 1 calc((100% - 48px) / 3); text-align: center;}
.project-image {background: #171717; height: 360px; border: 1px solid #303030; border-radius: 3px;}
.project-card .project-image>img, .project-card.is-monochrome .project-image>img, .lightbox-stage>#lightbox-image {filter: grayscale(var(--photo-grayscale,0)) brightness(var(--photo-brightness,1)) contrast(var(--photo-contrast,1));}
.project-image>img {object-position: var(--photo-position,50% 50%);}
.project-caption {position: relative; justify-content: center; gap: 0; min-height: 78px; padding: 17px 24px 0; text-align: center;}
.project-caption h3 {font-family: Arial, Helvetica, sans-serif; font-size: 16px; line-height: 1.45; font-weight: 600; letter-spacing: 0;}
.project-caption>div>span {color: #b4b4b4; font-size: 8px; letter-spacing: .13em;}
.project-caption>.icon {position: absolute; right: 0; top: 20px; margin-top: 0; color: #a4a4a4;}
.gallery-more .button {font-size: 12px;}
[data-gallery] .gallery-more:has(>[data-gallery-more][hidden]) {display: none;}
.about {border-block: 1px solid #242424; padding-block: 88px;}
.about-visual {max-width: 1030px; margin-inline: auto;}
.about-photo-caption {justify-content: center; flex-direction: row; flex-wrap: wrap; gap: 6px 24px; text-align: center;}
.about-photo-caption, .about-photo-caption>span:first-child {color: #999; font-size: 9px;}
.about-links {display: flex; justify-content: center; margin-top: 26px; text-align: center;}
.team-photo {background: #000; box-shadow: none;}
.play-circle {border-color: #696969; color: #eee;}
.about-links .testimonial-button {font-size: 12px;}

.video-grid {display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px 24px; margin-inline: auto;}
.video-card {min-width: 0;}
.video-player {aspect-ratio: 9/16; background: #0d0d0d; border: 1px solid #303030; border-radius: 3px; overflow: hidden;}
.video-player iframe, .video-player video {display: block; width: 100%; height: 100%; border: 0; background: #000; object-fit: contain;}
.video-card-caption {position: relative; padding: 18px 24px 0; display: flex; align-items: flex-start; justify-content: center; text-align: center;}
.video-card-caption h3 {font-size: 23px; line-height: 1.15; font-weight: 700;}
.video-card-caption a {display: inline-flex; font-size: 10px; line-height: 1.4; gap: 4px; color: #aaa; margin-top: 8px; align-items: center;}
.video-card-caption .icon {width: 12px; height: 12px;}
.video-number {position: absolute; right: 0; top: 21px; font-size: 10px; color: #888;}

.contact {border-top: 1px solid #2b2b2b; padding-block: 86px;}
.contact-centered {max-width: 880px;}
.contact-heading {text-align: center; margin-bottom: 33px;}
.contact-heading .eyebrow {justify-content: center; margin-bottom: 17px;}
.contact-heading h2 {font-size: clamp(40px,4.3vw,62px); line-height: 1.1;}
.contact-heading>p:not(.eyebrow) {color: #aaa; font-size: 14px; margin-top: 17px; line-height: 1.7;}
.estimate-card {max-width: 780px; margin-inline: auto; padding: 34px 36px 24px; background: #0d0d0d; color: #eee; border: 1px solid #303030; box-shadow: none; border-radius: 3px;}
.estimate-card iframe {display: block; width: 100%; border: 0; background: #0d0d0d;}
.estimate-alternative {color: #aaa; font-size: 11px; text-align: center; line-height: 1.8; margin-top: 15px;}
.estimate-alternative a {color: #ddd; text-decoration: underline; text-underline-offset: 4px;}
.contact-details {text-align: center; margin-top: 34px;}
.contact-phone {display: flex; justify-content: center; align-items: center; gap: 10px; font-family: Revelation Display, Arial, sans-serif; font-size: 28px; font-weight: 700; letter-spacing: 0; margin: 0;}
.contact-phone .icon {color: #ddd; width: 20px; height: 20px;}
.contact-email {color: #bbb; font-size: 13px; margin-top: 8px; border-bottom-color: #555;}
.contact-service-area {color: #999; font-size: 11px; margin-top: 18px;}
.contact-socials {display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 16px; margin-top: 23px; color: #c7c7c7;}
.contact-socials a {display: inline-flex; align-items: center; justify-content: center; gap: 9px; font-size: 11px; min-height: 42px; padding: 9px 12px; border: 1px solid #333; border-radius: 2px; transition: border-color .2s,color .2s;}
.contact-socials .brand-icon {width: 18px; height: 18px;}
.contact-socials a:hover {color: #fff; border-color: #888;}
.site-footer {border-top: 1px solid #2b2b2b;}
.footer-top p, .footer-links a, .footer-links button {color: #aaa;}
.footer-links>span {color: #eee;}
.footer-links .contact-socials {justify-content: flex-start; gap: 8px; margin: 5px 0;}
.footer-links .contact-socials a {padding: 9px; width: 38px; min-height: 38px;}
.footer-links .contact-socials span {display: none;}
.footer-bottom {color: #929292; border-color: #2b2b2b;}
.footer-bottom a {color: #aaa;}
.scope-note, .scope-note p {color: #888; border-color: #222;}
.mobile-project-bar {background: #000; border-color: #333; color: #fff;}
.mobile-project-bar a:first-child {color: #fff; background: #111;}
.mobile-project-bar a:last-child {background: #8a2825; color: #fff;}
.gallery-dialog, .video-dialog {background: #070707; color: #eee;}
.lightbox-top, .lightbox-caption {color: #eee;}
.lightbox-caption .tiny-label {color: #aaa;}
.payment-dialog {background: #101010; color: #eee; border-color: #333;}
.payment-dialog>p, .payment-help, .invoice-note {color: #b5b5b5;}
.payment-dialog .dark-icon {color: #fff; border-color: #555;}
.invoice-calculator {background: #080808; border-color: #333;}
.invoice-calculator label, .invoice-total>span {color: #bbb;}
.invoice-input-row input {background: #171717; border-color: #444; color: #fff;}
.invoice-total {border-color: #333;}
.invoice-total output {color: #fff;}
.payment-help a {color: #fff;}
.utility-main {background: #000; color: #eee; min-height: 65vh;}
.utility-main .container {max-width: 1000px;}
.utility-back {color: #aaa;}
.utility-main h1 {font-weight: 700; color: #fff;}
.utility-main .utility-copy {max-width: 760px; color: #bcbcbc; line-height: 1.85;}
.utility-copy h2 {color: #fff; font-size: 29px;}
.utility-copy a:not(.button) {color: #fff; text-decoration: underline; text-underline-offset: 4px;}
.utility-footer {background: #000;}

@media(max-width:1199px) {
  .hero--family h1 {font-size: 72px;}
  .review-band .review-card {grid-template-columns: 165px minmax(0,1fr) auto; gap: 24px; padding: 29px;}
  .google-badge {padding-right: 23px;}
  .review-copy h2 {font-size: 25px;}
  .review-actions>.button {font-size: 9px; padding-inline: 13px; gap: 9px;}
  .partners h2 {font-size: 46px;}
}
@media(max-width:979px) {
  .hero--family {min-height: 585px;}
  .hero--family h1 {font-size: 63px;}
  .hero-content {padding-top: 64px; padding-bottom: 36px;}
  .hero--family .hero-description {font-size: 14px; max-width: 520px;}
  .hero--family .hero-actions .button {font-size: 11px; padding: 16px 19px;}
  .review-band .review-card {grid-template-columns: 155px minmax(0,1fr); gap: 22px 26px; padding: 27px;}
  .google-badge {grid-row: 1/3; height: 100%; justify-content: center;}
  .review-actions {grid-column: 2; flex-direction: row; align-items: center; justify-content: space-between; gap: 12px;}
  .review-viewport {min-height: 65px; margin-top: 12px;}
  .review-slide blockquote {font-size: 15px;}
  .review-controls {align-self: auto; margin: 0; gap: 6px;}
  .review-actions>.button {font-size: 9px; min-height: 43px; padding-block: 11px;}
  .review-controls .icon-button {width: 34px; height: 34px;}
  .partners h2 {font-size: 39px;}
  .partners-tagline {font-size: 15px;}
  .partners-heading {align-items: flex-start; flex-direction: column; gap: 23px;}
  .partner-controls {gap: 25px;}
  .service-cards h3 {font-size: 28px;}
  .project-grid {gap: 24px 18px;}
  .project-card {flex-basis: calc((100% - 36px) / 3);}
  .project-image {height: 300px;}
  .video-grid {gap: 18px;}
  .video-card-caption h3 {font-size: 21px;}
  .video-card-caption a {font-size: 9px;}
  .contact-heading h2 {font-size: 49px;}
}
@media(max-width:759px) {
  .section {padding-block: 62px;}
  .brand, .brand img {width: 127px;}
  .header-cta {font-size: 9px;}
  .hero--family {min-height: 0;}
  .hero-family-photo {inset: auto 0 104px; width: 100%; height: auto; aspect-ratio: 1630/829; filter: brightness(.8) contrast(1.02);}
  .hero-shade {background: linear-gradient(180deg,#000 0%,#000 53%,rgba(0,0,0,.07) 76%,rgba(0,0,0,.55) 90%,#000 100%);}
  .hero-content {padding-top: 37px; padding-bottom: clamp(200px,47vw,325px);}
  .hero--family .eyebrow {font-size: 8px; letter-spacing: .13em; margin-bottom: 23px;}
  .hero--family h1 {font-size: clamp(46px,9.3vw,68px); line-height: 1.05; max-width: 610px; letter-spacing: -.025em; text-wrap: initial;}
  .hero--family .hero-description {font-size: 13px; line-height: 1.8; max-width: 510px; margin-top: 21px;}
  .hero--family .hero-actions {gap: 10px; margin-top: 24px; flex-wrap: wrap;}
  .hero--family .hero-actions .button {font-size: 10px; min-height: 49px; padding: 14px 15px; gap: 12px;}
  .hero-signoff {min-height: 104px; padding-top: 15px; padding-bottom: 18px; gap: 20px; font-size: 9px; border-top-color: #ffffff24;}
  .hero-signoff p>span {font-size: 8px;}
  .hero-signoff .hero-scripture {font-size: 12px;}
  .hero-scripture>span {font-size: 8px; letter-spacing: .08em;}
  .review-band {padding-block: 27px 8px;}
  .review-band .review-card {grid-template-columns: 1fr; padding: 25px; gap: 23px;}
  .google-badge {grid-row: auto; border-right: 0; border-bottom: 1px solid #333; padding: 0 0 21px; flex-direction: row; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 11px;}
  .google-brand {font-size: 19px; gap: 8px;}
  .google-icon {width: 26px; height: 26px;}
  .google-badge .rating-stars {font-size: 18px; margin: 0; letter-spacing: 1px;}
  .rating-value {margin: 0; gap: 7px;}
  .rating-value strong {font-size: 28px;}
  .rating-value>span {font-size: 9px; max-width: 60px;}
  .review-copy .tiny-label {font-size: 8px;}
  .review-copy h2 {font-size: 28px; margin-top: 9px;}
  .review-viewport {min-height: 66px; margin-top: 15px;}
  .review-slide blockquote {font-size: 15px;}
  .review-slide cite {font-size: 10px; margin-top: 10px;}
  .review-actions {grid-column: auto; align-items: center;}
  .review-actions>.button {padding: 12px; font-size: 9px; gap: 7px; min-height: 44px;}
  .review-controls>span {font-size: 8px; margin-right: 2px;}
  .review-controls .icon-button {width: 32px; height: 32px;}
  .partners {padding-top: 48px; padding-bottom: 50px;}
  .partners-heading {margin-bottom: 28px; gap: 21px;}
  .partners h2 {font-size: clamp(36px,7.5vw,48px); max-width: 480px; line-height: 1.05;}
  .partners-tagline {font-size: 13px; margin-top: 12px;}
  .partner-controls .text-link {font-size: 10px;}
  .partner-card {width: 220px; flex-basis: 220px; height: 146px; padding: 19px 20px 14px; gap: 13px;}
  .partner-card img {height: 81px; max-width: 180px;}
  .partner-card figcaption {font-size: 8px;}
  .section-heading {gap: 20px; margin-bottom: 31px;}
  .section-heading>p {font-size: 13px; line-height: 1.75;}
  .service-cards {column-gap: 25px;}
  .service-cards h3 {font-size: 24px; line-height: 1.12;}
  .service-cards article {padding-block: 24px 28px;}
  .service-cards p {font-size: 12px; line-height: 1.75;}
  .service-card-number {font-size: 10px;}
  .services-bottom {font-size: 12px;}
  .services-bottom .text-link {font-size: 11px;}
  .project-grid {gap: 25px 14px;}
  .project-card {flex-basis: calc((100% - 14px) / 2);}
  .project-image {height: 270px;}
  .project-caption {padding: 12px 0 0; min-height: 76px;}
  .project-caption h3 {font-size: 14px;}
  .project-caption>div>span {font-size: 8px;}
  .about-photo-caption, .about-photo-caption>span:first-child {font-size: 8px;}
  .video-grid {grid-template-columns: 1fr; gap: 33px; max-width: 350px;}
  .video-card-caption {padding-top: 15px;}
  .video-card-caption h3 {font-size: 26px;}
  .video-card-caption a {font-size: 10px;}
  .video-player {max-height: 610px;}
  .contact-heading h2 {font-size: 42px;}
  .contact-heading .eyebrow {font-size: 9px; letter-spacing: .13em;}
  .contact-heading>p:not(.eyebrow) {font-size: 13px;}
  .estimate-card {padding: 25px 20px 20px;}
  .estimate-alternative {font-size: 10px;}
  .contact-socials {gap: 10px; margin-top: 21px;}
  .contact-socials a {font-size: 10px; gap: 7px; padding-inline: 10px;}
  .footer-links .contact-socials {gap: 7px;}
}
@media(max-width:399px) {
  .brand, .brand img {width: 113px;}
  .hero--family h1 {font-size: 45px;}
  .hero--family .hero-actions .button {font-size: 9px; padding-inline: 12px; gap: 8px;}
  .review-band .review-card {padding: 23px 20px;}
  .google-badge {gap: 8px;}
  .google-brand {font-size: 18px; gap: 7px;}
  .google-icon {width: 23px; height: 23px;}
  .google-badge .rating-stars {font-size: 15px; letter-spacing: .5px;}
  .rating-value strong {font-size: 27px;}
  .rating-value>span {font-size: 8px; max-width: 52px;}
  .review-copy h2 {font-size: 26px;}
  .review-actions {gap: 8px;}
  .review-actions>.button {font-size: 8px; padding-inline: 10px;}
  .review-controls {gap: 5px;}
  .review-controls .icon-button {width: 30px; height: 30px;}
  .partners h2 {font-size: 36px;}
  .partners-tagline {font-size: 12px;}
  .service-cards {column-gap: 19px;}
  .service-cards h3 {font-size: 22px;}
  .service-cards p {font-size: 11px;}
  .project-grid {gap: 22px 11px;}
  .project-card {flex-basis: calc((100% - 11px) / 2);}
  .project-image {height: 240px;}
  .project-caption h3 {font-size: 13px;}
  .contact-heading h2 {font-size: 38px;}
  .estimate-card {padding-inline: 16px;}
  .contact-socials a {padding-inline: 8px;}
  .contact-email {font-size: 12px;}
}
@media(prefers-reduced-motion:reduce) {
  .hero-family-photo {transform: none;}
  .review-slide {transform: none;}
  .partner-track {animation: none!important;}
  .partner-marquee {overflow-x: auto; mask-image: none;}
}
