/* Integration keeps Elementor's editor controls outside the branded page styles. */
.em-elementor-page .elementor-section.em-layout>.elementor-container{max-width:none}
.em-elementor-page .em-layout>.elementor-container>.elementor-column>.elementor-widget-wrap{padding:0;gap:0}
.em-elementor-page .em-layout .elementor-widget{margin-bottom:0}
.em-design{font:16px/1.65 'DM Sans',sans-serif;color:var(--ink)}
.em-design h1,.em-design h2{font-family:var(--serif);font-weight:400;line-height:1.04;letter-spacing:-.04em;color:inherit}
.em-design h1{font-size:clamp(60px,6.3vw,98px);margin:0 0 28px}
.em-design h2{font-size:60px}
.em-design h3{color:inherit}
.em-design a{color:inherit}
.em-design .button{color:white;border-radius:0}
.em-design .button.light{color:var(--blue)}
.em-design .hero-photo>img{height:100%;width:100%;max-width:none}
.em-design .about-photo img{height:100%;width:100%}
.em-design .card-photo img{height:100%;width:100%}
.em-design .hero-bottom{font-size:12px}
.em-design .eyebrow{font-size:12px}
.em-design .contact h2{font-size:60px}
.em-design .contact h3{color:#aebcd3}
.em-design .card h3{font:31px var(--serif)}
.em-design .about h2{font-size:65px}
.em-design .contact-photo{height:100%;width:100%}
.em-design .em-catalog-intro{background:var(--soft);margin:0 3%;padding:80px 6% 55px}
.em-design .em-catalog-intro h1{font-size:clamp(45px,5.5vw,82px)}
.em-design .em-catalog-intro>p:not(.eyebrow){max-width:660px;color:#596677}
.em-design .em-category-nav{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}
.em-design .em-category-nav a{font-size:14px;border:1px solid #c5cfdd;padding:9px 14px}
.em-design .em-category-nav a:hover{background:var(--blue);color:white}
.em-design .em-catalog{padding-top:65px;padding-bottom:30px}
.em-design .em-catalog h2{font-size:48px;margin-bottom:30px}
.em-design .em-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.em-design .em-service-card{border-bottom:1px solid var(--line);min-width:0}
.em-design .em-service-card>img{width:100%;height:250px;object-fit:cover}
.em-design .em-service-card>div{padding:24px 0 16px}
.em-design .em-service-card h3{font:29px/1.15 var(--serif);margin:0 0 14px}
.em-design .em-service-card p{font-size:16px;color:#596677;line-height:1.75}
.em-design .em-catalog:last-child{margin-bottom:45px}
.em-elementor-page .em-design footer{min-height:90px}
@media(max-width:1000px){.em-design .about h2{font-size:52px}.em-design .contact h2{font-size:50px}.em-design .em-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.em-design h1{font-size:67px}.em-design h2{font-size:47px}.em-design .about h2{font-size:54px}.em-design .contact h2{font-size:47px}.em-design .contact-photo{height:280px}.em-design .em-service-grid{grid-template-columns:1fr}.em-design .em-catalog-intro{padding:45px 25px;margin:0 16px}.em-design .em-catalog-intro h1{font-size:48px}.em-design .em-catalog h2{font-size:39px}.em-design .em-service-card>img{height:270px}.em-design .em-service-card h3{font-size:28px}}
