/* Targeted photo/benefit update, 2026-09-08. */
.hero .feature-grid{grid-template-columns:1.1fr 1.45fr 1fr 1fr .8fr .8fr}
.hero .feature{min-width:0}
.hero .feature[data-benefit="quality"]{transition-delay:.4s}
.process-left-row img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center}
.contact-person .handnote>span{display:none}
@media(min-width:761px){
 .hero .feature{gap:10px;padding-inline:6px}
 .hero .feature b{white-space:normal;overflow-wrap:normal}
}
@media(min-width:761px) and (max-width:1100px){
 .hero .feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));height:auto;padding-block:10px;row-gap:12px}
}
@media(max-width:760px){
 .hero .team-badge{display:none}
 .hero .feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));height:auto}
 .hero .feature,.hero .feature:nth-child(n+4){grid-column:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;gap:6px;padding:12px 5px;min-width:0;border-left:0}
 .hero .feature:nth-child(n+4){border-top:1px solid #283031}
 .hero .feature:nth-child(n+4) .icon{grid-row:auto;width:42px;height:42px;margin:0 0 1px}
 .hero .feature:nth-child(n+4) b{font-size:clamp(9px,2.65vw,18px)}
 .hero .feature:nth-child(n+4) .mobile-feature-description{font-size:clamp(10px,2.45vw,17px)}
 /* Reserve the entire photo height AFTER the form; its top cannot hide behind inputs. */
 .contact{--contact-photo-height:min(100vw,600px);padding-bottom:var(--contact-photo-height);background-size:auto var(--contact-photo-height);background-position:right bottom;background-repeat:no-repeat}
 .contact .contact-wrap{min-height:0;padding-bottom:20px}
 .contact .contact-person{display:none}
 .process-left-row{grid-template-columns:1fr;align-items:start;gap:20px}
 .process-left-row img{width:100%;height:auto;max-width:520px;max-height:none;aspect-ratio:auto;object-fit:contain;justify-self:center}
 /* Full-width photo above its caption, without forcing source images into a narrow strip. */
 .service-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .service-cards .service-card{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;min-height:0;align-content:start}
 .service-cards .service-card>a{display:block;min-width:0;height:auto;align-self:start}
 .service-cards .service-card img,.service-cards .service-card>a img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center}
 .service-cards .service-card>div{padding:12px 10px;justify-content:flex-start;min-width:0}
 .service-cards .service-card h3{font-size:18px;line-height:1.2;overflow-wrap:break-word}
 .service-cards .service-card strong{font-size:25px;white-space:normal;margin-top:auto}
 .article-cards{grid-template-columns:minmax(0,1fr);gap:28px}
 .article-cards img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;object-position:center}
 .article-cards h3,.article-cards p{max-width:none}
}
@media(min-width:480px) and (max-width:760px){
 .hero .feature:nth-child(n+4) .icon{width:60px;height:60px}
}
