/* Small Elementor adaptations; the approved responsive layout comes from dm-design. */
.elementor .dm-scope .about-heading h1{color:#20231f}
.elementor .dm-scope .about-company-photo{margin:0}
.elementor .dm-scope .about-company-photo img{display:block;width:100%;height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain}
.elementor .dm-scope .about-company-copy>p{margin-bottom:0}
.elementor .dm-scope .about-company-copy>p+p{margin-top:20px}
.elementor .dm-scope .about-approach .value h3{color:#20231f}
.elementor .dm-scope .about-approach .value p{margin-bottom:0}
.elementor .dm-scope .page-head h1,
.elementor .dm-scope .career-copy h1,
.elementor .dm-scope .contact-details h1,
.elementor .dm-scope .service-info h2,
.elementor .dm-scope .services-faq h2,
.elementor .dm-scope .cta-inner h2{color:#20231f}
.elementor .dm-scope .careers-roles h2,
.elementor .dm-scope .careers-roles h3{color:#f4f3ee}
.elementor .dm-scope .contact-content .dm-social-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:0}
.elementor .dm-scope .contact-content .dm-social-links a{display:inline-flex;align-items:center;gap:9px;min-height:44px;color:#b74e16;font-size:13px}
.elementor .dm-scope .contact-content .dm-social-links svg{width:18px;height:18px}
.elementor .dm-scope .dm-enquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.elementor .dm-scope .dm-enquiry-status{margin-top:20px;font-size:13px;line-height:1.7;color:#20231f}
.elementor .dm-scope .dm-enquiry-status[role="alert"]{color:#9e341b}
.elementor .dm-scope .dm-enquiry-status[hidden]{display:none}
.elementor .dm-scope .contact-form button:disabled{opacity:.7}
@media(max-width:580px){
 .elementor .dm-scope .contact-form input,
 .elementor .dm-scope .contact-form textarea{font-size:16px}
}

/* Approved responsive design update, version 1.2.0. */
.elementor .dm-scope .about-opening .about-heading h1,
.elementor .dm-scope .services-page-head h1{font-size:clamp(55px,5vw,72px);line-height:1.04;letter-spacing:-.7px}
.elementor .dm-scope .about-company-photo img,
.elementor .dm-scope .career-banner>img.career-photo{border-radius:12px}
.elementor .dm-scope .contact-details .contact-item>p:not(.eyebrow){font-family:var(--body);font-size:16px;font-weight:400;line-height:1.7;color:var(--ink)}
.elementor .dm-scope .hero-actions a{display:inline-flex;align-items:center;justify-content:flex-start;min-height:0;padding:0 0 8px;border:0;border-bottom:1px solid currentColor;background:transparent;color:#fff;font-size:12px;font-weight:700;line-height:1.7;gap:0;transition:color .2s,transform .2s}
.elementor .dm-scope .hero-actions a:hover,.elementor .dm-scope .hero-actions a:focus-visible{background:transparent;color:#f17b35;transform:translateY(-2px)}
.elementor .dm-scope .hero-actions{gap:36px}
.elementor .dm-scope .home-projects .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;column-gap:40px}
.elementor .dm-scope .home-projects .project-card:nth-child(n){margin-top:0;align-self:start}
.elementor .dm-scope .home-projects .project-card:nth-child(n) .project-photo{aspect-ratio:1.5}
.elementor .dm-scope .menu-toggle.dm-icon-only{width:44px;height:44px;padding:10px;justify-content:center;gap:0}
.elementor .dm-scope .dm-menu-icon{position:relative;display:block;width:23px;height:16px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;font-size:0!important}
.elementor .dm-scope .dm-menu-icon:before{content:'';position:absolute;top:5px;left:0;width:23px;border-top:2px solid currentColor}
.elementor .dm-scope .project-arrow{display:none}
.elementor .dm-scope .dm-video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border:1px solid #fff;background:#20231f50;border-radius:50%;backdrop-filter:blur(2px)}
.elementor .dm-scope .dm-video-play:after,.elementor .dm-scope .play:after,.elementor .dm-scope .dm-hero-start:after{content:'';display:block;width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:12px solid #fff;margin-left:4px}
.elementor .dm-scope .play,.elementor .dm-scope .dm-hero-start{font-size:0}
.elementor .dm-scope .dm-hero-start{place-items:center}
.elementor .dm-scope .dm-hero-start>span{display:none}
.elementor .dm-scope .dm-review-chevron{display:block;width:10px;height:10px;border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg);margin-right:4px}
.elementor .dm-scope [data-review-direction="-1"] .dm-review-chevron{transform:rotate(-135deg);margin-left:4px;margin-right:0}
.elementor .dm-scope .dm-video-card .project-photo{background:#20231f}
.elementor .dm-scope .dm-video-card .video-badge{font-size:10px;letter-spacing:.4px}
.elementor .dm-scope .dm-instagram-section{background:#e9ece3;border-top:1px solid var(--line);padding:64px 0 70px}
.elementor .dm-scope .dm-instagram-section .section-heading{margin-bottom:28px;align-items:center}
.elementor .dm-scope .dm-instagram-section h2{font-size:clamp(36px,3.5vw,48px)}
.elementor .dm-scope .dm-instagram-section .instagram-handle{font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.elementor .dm-scope .dm-instagram-section .instagram-handle:hover{color:#b74e16}
@media(min-width:581px){.elementor .dm-scope .career-intro .career-banner>img.career-photo{transform:translateY(22px);align-self:center}}
@media(min-width:851px){
 .elementor .dm-scope .sector-strip .sector-grid{max-width:980px}
 .elementor .dm-scope .site-footer[data-dm-social-footer] .footer-top{padding-bottom:40px}
 .elementor .dm-scope .site-footer[data-dm-social-footer] .footer-bottom{padding-bottom:42px}
}
@media(max-width:580px){.elementor .dm-scope .hero-actions{gap:22px}.elementor .dm-scope .dm-video-play{width:54px;height:54px}}
@media(max-width:1150px){.elementor .dm-scope .contact-details .contact-item>p:not(.eyebrow){font-size:13px}}
@media(max-width:580px){
 .elementor .dm-scope .dm-instagram-section{padding:44px 0 48px}
 .elementor .dm-scope .dm-instagram-section .section-heading{align-items:flex-start;flex-direction:column;gap:16px}
 .elementor .dm-scope .home-projects .project-grid{grid-template-columns:1fr}
 .elementor .dm-scope .about-opening .about-heading h1,
 .elementor .dm-scope .services-page-head h1{font-size:clamp(28px,10vw,48px)}
 .elementor .dm-scope .about-opening .about-heading h1{white-space:nowrap}
 .elementor .dm-scope .services-page-head h1 .dm-heading-line{display:block;white-space:nowrap}
 .elementor .dm-scope .contact-details .contact-item>p:not(.eyebrow){font-size:15px}
}
@media(prefers-reduced-motion:reduce){.elementor .dm-scope .hero-actions a{transition:none}.elementor .dm-scope .hero-actions a:hover{transform:none}}
