/* Visual correspondence to the owner's original Wix page, without Wix runtime. */
.page-blog main>.wrap{max-width:1130px;display:flex;flex-direction:column}
.page-blog .breadcrumb{display:none}
.page-blog .blog-toolbar{order:0;margin:37px 0 55px;padding:0;border:0}
.page-blog .blog-heading{order:1;padding:0 20px;margin-bottom:60px}
.page-blog .blog-heading h1{font-size:36px;margin:0}
.page-blog .blog-grid{order:3;display:flex;flex-direction:column;gap:32px}
.page-blog #blog-no-results{order:2}
.page-blog .blog-filters{gap:30px}
.page-blog .filter-button{border:0;border-radius:0;padding:8px 0;background:none;font-size:14px}
.page-blog .filter-button[aria-current=page]{color:#4384db;background:none}
.page-blog .blog-search input{width:170px;padding:8px 10px;font-size:13px}
.page-blog .blog-card{display:grid;grid-template-columns:1fr 1.06fr;border:1px solid #eee;border-radius:0;overflow:hidden}
.page-blog .blog-card>a{display:block;min-width:0}
.page-blog .blog-card img{height:380px;min-height:380px;width:100%;object-fit:cover;border-radius:0}
.page-blog .blog-card-body{padding:26px 35px;display:flex;flex-direction:column}
.page-blog .blog-meta{font-size:12px;line-height:1.5;margin-bottom:15px}
.page-blog .blog-card h2{font-size:28px;line-height:1.25;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.page-blog .blog-card p{font-size:15px;line-height:1.6}
.page-blog .blog-card .text-link{margin-top:auto;padding-top:17px;border-top:1px solid #ccc}
@media(min-width:1101px){
 .page-service .service-hero>div:last-child{padding-right:40px}
 .header-inner{min-height:94px;padding-top:0;padding-bottom:16px;gap:32px}
 .brand,.brand img{width:225px;height:67px}
 .header-email{font-size:17px}
 .home-hero{grid-template-columns:1.5fr 1fr;gap:40px}
 .home-hero h1{font-size:44px;letter-spacing:-.012em;line-height:1.3;margin-bottom:27px}
 .hero-copy{padding-top:24px}.hero-copy p{margin-bottom:24px}
 .hero-picture{height:440px}
}
.page-home .services-section{background:#fff;padding:40px 0 0}
.page-home .services-section .section-heading{margin-bottom:28px}
.page-home .services-section h2{font-size:36px}
.page-home .service-grid{column-gap:60px;row-gap:120px}
.home-service{display:block;text-align:center;text-decoration:none;min-width:0}
.home-service-copy{min-height:96px;padding:0 4px 20px}
.home-service h3{font-size:21px;letter-spacing:0;margin-bottom:3px}
.home-service p{font-size:15px;line-height:1.65;margin:0;color:#111}
.home-service-picture{position:relative}
.home-service-picture img{width:100%;height:auto;aspect-ratio:1.23;object-fit:cover}
.original-image-button{position:absolute;bottom:38px;left:50%;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:7px;background:#fff;color:#111;border-radius:32px;padding:15px 24px;min-width:140px;font-size:14px;line-height:1.5;white-space:nowrap}
.original-image-button>span{background:#080908;color:#fff;border-radius:50%;width:16px;height:16px;font-size:10px;display:grid;place-items:center}
.home-service:hover .original-image-button,.home-product:hover .original-image-button{background:#f0f0f0}
.page-home .products-section{display:block;padding-block:85px 70px}
.page-home .products-section h2{font-size:34px;margin-bottom:36px}
.home-product{display:block;width:32%;position:relative}
.page-home .home-product img{width:100%;height:auto;aspect-ratio:1.23;object-fit:cover;border-radius:0}
.home-product .original-image-button{border:1px solid #111;bottom:38px;padding-inline:15px}
.page-home .process-section{display:block;max-width:1080px;padding-block:40px 65px;border:0}
.page-home .process-intro h2{text-align:center;font-size:38px;margin-bottom:37px}
.page-home .process-intro p{max-width:none;font-size:21px;line-height:1.6;margin:0}
.page-home .process-steps{margin-top:24px}
.page-home .process-steps details{padding:13px 4px}
.page-home .process-steps summary{font-size:18px}
.page-home .review-section{background:#fff}
.page-home .features-intro h2{letter-spacing:-.015em;margin-bottom:85px}
.page-home .feature-row{border-color:#111}
.page-service .breadcrumb{display:none}
.page-service .service-hero{grid-template-columns:1.06fr 1fr;gap:40px;padding:23px 0 90px}
.page-service .service-hero-picture{border-radius:0;max-height:none}
.page-service .service-hero-picture img{width:100%;height:auto;max-height:none;aspect-ratio:1.5;object-fit:cover}
.page-service .service-hero h1{font-size:35px;letter-spacing:0;line-height:1.17;margin-bottom:22px}
.page-service .service-hero p{font-size:15px;line-height:1.6;margin-bottom:25px}
.page-service .service-gallery>h2{font-size:36px;margin-bottom:36px}
.page-service .service-gallery .gallery-item{border:0;border-radius:0;background:#fff}
.page-service .service-detail{max-width:none}
@media(max-width:1100px){.page-home .service-grid{column-gap:30px;row-gap:65px}.page-home .features-intro h2{margin-bottom:35px}.page-service .service-hero h1{font-size:29px}}
@media(max-width:820px){.page-home .service-grid{gap:45px 25px}.home-service-copy{min-height:110px}.page-home .home-product{width:48%}.page-service .service-hero{gap:25px}.page-service .service-hero h1{font-size:26px}.page-home .process-intro p{font-size:18px}}
@media(max-width:600px){
 .page-blog .blog-toolbar{margin:16px 0 30px;gap:15px}.page-blog .blog-filters{gap:17px;flex-wrap:wrap}
 .page-blog .blog-heading{padding:0;margin-bottom:30px}.page-blog .blog-heading h1{font-size:31px}
 .page-blog .blog-card{display:block}.page-blog .blog-card img{height:240px;min-height:0}
 .page-blog .blog-card-body{padding:22px}.page-blog .blog-card h2{font-size:25px}
 .page-blog .blog-search input{width:100%}
 .page-home .services-section{padding-top:20px}.page-home .services-section h2{font-size:31px}
 .page-home .service-grid{row-gap:42px}.home-service-copy{min-height:0;padding-bottom:20px}
 .home-service h3{font-size:23px}.home-service-picture img{aspect-ratio:1.3}
 .page-home .products-section{padding-block:50px 30px}.page-home .home-product{width:100%}
 .page-home .process-section{padding-block:30px 45px}.page-home .process-intro h2{font-size:31px;margin-bottom:25px}
 .page-home .process-intro p{font-size:16px}.page-home .process-steps summary{font-size:17px}
 .page-home .features-intro h2{margin-bottom:24px}
 .page-service .service-hero{padding:24px 0 45px}.page-service .service-hero h1{font-size:31px}
 .page-service .service-gallery>h2{font-size:28px}
}

/* Keep wrapped article titles clickable across their complete visible area. */
.blog-card h2 a { display: block; }

/* Original notice icons are not full-size project photographs. */
.gallery-notice-icon { margin: 0 0 18px; }
.gallery-notice-icon img { width: auto; height: auto; max-width: 66px; max-height: 66px; }
/* Fit originals inside the viewer without enlarging small source images. */
.lightbox img { width: auto; height: auto; max-width: 100%; }
