/* Compact four-domain introduction; the shared hero owns its title and spacing. */
.d4y-page-about .hero-company-boxes { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-top:36px; }
.d4y-page-about .hero-company-boxes .hero-company-box { width:auto; min-width:0; padding:24px; border:1px solid var(--d4y-border,#dfe5ee); border-radius:var(--d4y-card-radius,16px); box-shadow:none; }
.d4y-page-about .hero-company-boxes .hero-company-box h2 { margin:0 0 12px; font-size:36px; line-height:1.1; }
.d4y-page-about .hero-company-boxes .hero-company-box :is(h3,h4) { margin:0 0 8px; font-size:20px; line-height:1.25; }
.d4y-page-about .hero-company-boxes .hero-company-box p { margin:0; font-size:14px; line-height:1.65; }
@media(max-width:991px) {
 .d4y-page-about .hero-company-boxes { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:28px; }
}
@media(max-width:767px) {
 .d4y-page-about .hero-company-boxes .hero-company-box { padding:20px 16px; }
 .d4y-page-about .hero-company-boxes .hero-company-box h2 { font-size:28px; }
 .d4y-page-about .hero-company-boxes .hero-company-box :is(h3,h4) { font-size:18px; overflow-wrap:break-word; }
 .d4y-page-about .hero-company-boxes .hero-company-box p { font-size:13px; }
}
/* About page: an editorial composition around the original content and curved artwork. */
.page-template-about .elementor-widget-synckpagescompanyservice .company-service-area { padding: 56px 0 72px; }
.page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 24px 48px; padding: 0; background: none; border-radius: 0; }
.page-template-about .elementor-widget-synckpagescompanyservice .section-header { grid-column: 2; display: block !important; margin: 0; padding: 0; }
.page-template-about .elementor-widget-synckpagescompanyservice .section-header .section-title { max-width: 18ch; margin: 0 0 16px; font-size: var(--d4y-type-section,40px); line-height: 1.12; letter-spacing: -.8px; }
.page-template-about .elementor-widget-synckpagescompanyservice .section-header p { max-width: 40ch; margin: 0 0 22px; color: #596271; font-size: 17px; line-height: 1.6; }
.page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about > img { grid-column: 1; grid-row: 1 / span 2; width: 100%; height: 100%; min-height: 400px; max-height: 610px; margin: 0; object-fit: cover; object-position: 48% center; border-radius: 12px 72px 12px 12px; }
.page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about-body { grid-column: 2; margin: 0; padding: 0; }
.page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about-body p { margin: 0 0 24px; padding: 0; border: 0; font-size: 16px; line-height: 1.75; color: #596271; }
.page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about-body ul { display: grid; grid-template-columns: 1fr; gap: 0; margin: 0; padding: 0; border-top: 1px solid #dfe5ee; }
.page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about-body li { margin: 0; padding: 13px 0; border-bottom: 1px solid #dfe5ee; font-size: 14px; line-height: 1.5; gap: 12px; color: #34435a; }
.page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about-body li i { flex: none; }

/* A compact service directory on the existing charcoal field. */
.page-template-about .elementor-widget-synckpagesservice .service-area { position: relative; isolation: isolate; padding: var(--d4y-section-space,64px) 0; background: #1c1c1c; }
.page-template-about .elementor-widget-synckpagesservice .service-area::before { content: ''; position: absolute; z-index: -1; inset: 0; background: url('brand-lines.svg') left bottom/1800px auto no-repeat; opacity: .65; pointer-events: none; }
.page-template-about .elementor-widget-synckpagesservice .custom-container { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.3fr); gap: 72px; align-items: start; }
.page-template-about .elementor-widget-synckpagesservice .section-header { display: block !important; margin: 0; }
.page-template-about .elementor-widget-synckpagesservice .section-title { margin: 0 0 24px; font-size: var(--d4y-type-section,40px); line-height: 1.14; letter-spacing: -.7px; color: #fff; }
.page-template-about .elementor-widget-synckpagesservice .section-header > p { max-width: 38ch; margin: 0; font-size: 16px; line-height: 1.7; color: #bbc5d5; }
.page-template-about .elementor-widget-synckpagesservice .services-list { display: block; }
.page-template-about .elementor-widget-synckpagesservice .service-card { display: grid; grid-template-columns: 80px minmax(0,1fr); gap: 7px 22px; width: 100%; min-height: 0; margin: 0; padding: 22px 0; border: 0; border-bottom: 1px solid #ffffff24; border-radius: 0; background: transparent; box-shadow: none; }
.page-template-about .elementor-widget-synckpagesservice .service-card:first-child { padding-top: 0; }
.page-template-about .elementor-widget-synckpagesservice .service-card:last-child { padding-bottom: 0; border-bottom: 0; }
.page-template-about .elementor-widget-synckpagesservice .service-card .service-icon { grid-column: 1; grid-row: 1 / span 2; align-self: center; width: 80px; max-width: 80px; height: 54px; margin: 0; }
.page-template-about .elementor-widget-synckpagesservice .service-card :is(h3,h4) { grid-column: 2; margin: 0; font-size: 22px; line-height: 1.25; letter-spacing: -.25px; color: #fff; }
.page-template-about .elementor-widget-synckpagesservice .service-card a { color: #fff; }
.page-template-about .elementor-widget-synckpagesservice .service-card a:hover { color: #75a5ff; }
.page-template-about .elementor-widget-synckpagesservice .service-card a:focus-visible { outline: 2px solid #75a5ff; outline-offset: 4px; }
.page-template-about .elementor-widget-synckpagesservice .service-card p { grid-column: 2; width: auto; margin: 0; color: #bbc5d5; font-size: 15px; line-height: 1.6; }

/* Real people, clear names and roles; the team directory contains the complete roster. */
.elementor-widget-synckpagesourteam .our-team-2-area { padding: var(--d4y-section-space,64px) 0; }
.elementor-widget-synckpagesourteam .our-team-2-header { gap: 32px; padding: 0 0 30px; margin: 0 0 12px; border-radius: 0; background: none; border-bottom: 1px solid #dfe5ee; }
.elementor-widget-synckpagesourteam .our-team-2-header .left { position: relative; min-width: 0; }
.elementor-widget-synckpagesourteam .our-team-2-header .bg-shape { opacity: .35; width: 340px; height: 200px; object-fit: cover; object-position: center; }
.elementor-widget-synckpagesourteam .our-team-2-header .section-title { font-size: var(--d4y-type-section,40px); line-height: 1.15; letter-spacing: -.7px; margin-bottom: 16px; }
.elementor-widget-synckpagesourteam .our-team-2-header p { max-width: 60ch; font-size: 16px; line-height: 1.65; margin: 0; color: #596271; }
.elementor-widget-synckpagesourteam .our-team-2-header .theme-btn { flex-shrink: 0; }

.page-template-about .elementor-widget-synckpagesaboutservice .about-service3-area { padding: var(--d4y-section-space,64px) 0; }
.page-template-about .elementor-widget-synckpagesaboutservice .custom-row { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 56px; }
.page-template-about .elementor-widget-synckpagesaboutservice .img-box { position: relative; width: 100%; max-width: none; }
.page-template-about .elementor-widget-synckpagesaboutservice .img-box img { width: 100%; height: 320px; object-fit: cover; border-radius: 12px 64px 12px 12px; }
.page-template-about .elementor-widget-synckpagesaboutservice .content-box h2 { margin: 0 0 24px; font-size: var(--d4y-type-section,40px); line-height: 1.18; letter-spacing: -.6px; }
.page-template-about .elementor-widget-synckpagesaboutservice .content-box p { font-size: 16px; line-height: 1.7; }
.page-template-about .elementor-widget-synckpagesaboutservice .content-box ul { gap: 14px 24px; flex-wrap: wrap; }
@media (max-width:1023px) {
 .page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about { gap: 24px 32px; }
 .page-template-about .elementor-widget-synckpagesservice .custom-container { gap: 40px; }
 .page-template-about .elementor-widget-synckpagesaboutservice .custom-row { gap: 32px; }
}
@media (max-width:767px) {
 .page-template-about .elementor-widget-synckpagescompanyservice .company-service-area { padding: 36px 0 44px; }
 .page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about { grid-template-columns: minmax(0,1fr); gap: 24px; }
 .page-template-about .elementor-widget-synckpagescompanyservice .section-header { grid-column: 1; }
 .page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about > img { grid-column: 1; grid-row: 2; height: 210px; min-height: 0; max-height: none; border-radius: 10px 44px 10px 10px; object-position: center 42%; }
 .page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about-body { grid-column: 1; }
 .page-template-about .elementor-widget-synckpagescompanyservice .section-header .section-title { font-size: 32px; }
 .page-template-about .elementor-widget-synckpagescompanyservice .section-header p,.page-template-about .elementor-widget-synckpagescompanyservice .hero-service-about-body p { font-size: 16px; }
 .page-template-about .elementor-widget-synckpagesservice .service-area { padding: var(--d4y-section-space,44px) 0; }
 .page-template-about .elementor-widget-synckpagesservice .custom-container { grid-template-columns: minmax(0,1fr); gap: 28px; }
 .page-template-about .elementor-widget-synckpagesservice .section-title { font-size: 32px; margin-bottom: 18px; }
 .page-template-about .elementor-widget-synckpagesservice .service-card { gap: 6px 18px; padding: 20px 0; }
 .page-template-about .elementor-widget-synckpagesservice .service-card :is(h3,h4) { font-size: 21px; }
 .elementor-widget-synckpagesourteam .our-team-2-area { padding: var(--d4y-section-space,44px) 0; }
 .elementor-widget-synckpagesourteam .our-team-2-header { flex-direction: column; align-items: flex-start !important; gap: 24px; padding: 0 0 24px; }
 .elementor-widget-synckpagesourteam .our-team-2-header p { font-size: 16px; }
 .elementor-widget-synckpagesourteam .our-team-2-header .section-title { font-size: 32px; }
 .page-template-about .elementor-widget-synckpagesaboutservice .about-service3-area { padding: var(--d4y-section-space,44px) 0; }
 .page-template-about .elementor-widget-synckpagesaboutservice .custom-row { grid-template-columns: minmax(0,1fr); gap: 28px; }
 .page-template-about .elementor-widget-synckpagesaboutservice .img-box img { height: 220px; border-radius: 10px 44px 10px 10px; }
 .page-template-about .elementor-widget-synckpagesaboutservice .content-box h2 { font-size: var(--d4y-type-section,32px); margin-bottom: 20px; }
}

/* About refresh: compact introductions and client proof, within the existing design. */
body.d4y-page-about .hero-company-boxes { padding-bottom:24px; margin-top:28px; gap:16px; border-bottom:0; }
body.d4y-page-about .hero-company-boxes .hero-company-box { padding:20px 22px; border-radius:12px; background:#fff; }
body.d4y-page-about .hero-company-boxes .hero-company-box h2 { font-size:26px; color:#1351d8; margin-bottom:12px; }
body.d4y-page-about .hero-company-boxes .hero-company-box :is(h3,h4) { font-size:18px; }
body.d4y-page-about .hero-company-boxes .hero-company-box p { font-size:13px; line-height:1.6; }
body.d4y-page-about .hero-about-wrap { padding-bottom:16px; }
body.d4y-page-about .d4y-about-clients-block { padding:12px 0 40px; }
body.d4y-page-about .d4y-about-clients-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 0 18px; }
body.d4y-page-about .d4y-about-clients-heading h2 { margin:0; font-size:16px; line-height:1.4; font-weight:500; letter-spacing:0; color:#586477; }
body.d4y-page-about .d4y-about-clients-heading a { display:inline-flex; align-items:center; gap:10px; min-height:44px; color:#1351d8; font-size:13px; line-height:1.4; text-decoration:none; }
body.d4y-page-about .d4y-about-clients-heading svg { width:16px; height:16px; flex:none; }
body.d4y-page-about .d4y-about-clients-heading a:focus-visible { outline:2px solid #1351d8; outline-offset:4px; }
body.d4y-page-about .d4y-about-client-grid { display:flex; flex-wrap:wrap; justify-content:center; margin:0; padding:0; list-style:none; border-block:1px solid #e4e9f0; }
body.d4y-page-about .d4y-about-client-grid li { display:flex; flex:0 0 calc(100% / 7); align-items:center; justify-content:center; min-width:0; height:88px; padding:14px 10px; margin:0; }
body.d4y-page-about .d4y-about-client-mark { display:flex; align-items:center; justify-content:center; width:100%; max-width:154px; height:60px; padding:8px 12px; border-radius:8px; }
body.d4y-page-about .d4y-about-client-mark-dark { background:#20242b; }
body.d4y-page-about .d4y-about-client-art { display:flex; align-items:center; justify-content:center; width:100%; }
body.d4y-page-about .d4y-about-client-grid img { display:block; width:100%; max-width:126px; height:50px; object-fit:contain; mix-blend-mode:multiply; }
body.d4y-page-about .d4y-about-client-mark-dark img { mix-blend-mode:normal; }
body.d4y-page-about .d4y-about-client-art-normalized { position:relative; display:block; width:min(100%,calc(44px * var(--art-ratio))); aspect-ratio:var(--art-ratio); overflow:hidden; }
body.d4y-page-about .d4y-about-client-art-normalized img { position:absolute; max-width:none; width:var(--art-width); height:var(--art-height); left:var(--art-left); top:var(--art-top); object-fit:fill; }
@media(hover:hover) and (pointer:fine) {
 body.d4y-page-about .d4y-about-client-grid img { filter:grayscale(1); opacity:.75; transition:filter .2s,opacity .2s; }
 body.d4y-page-about .d4y-about-client-grid li:hover img { filter:none; opacity:1; }
}
body.d4y-page-about .elementor-widget-synckpagescompanyservice .company-service-area { padding:12px 0 48px; }
body.d4y-page-about .elementor-widget-synckpagescompanyservice .hero-service-about { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:16px 48px; align-items:start; }
body.d4y-page-about .elementor-widget-synckpagescompanyservice .hero-service-about>img { min-height:0; height:100%; max-height:500px; border-radius:14px 56px 14px 14px; }
body.d4y-page-about .elementor-widget-synckpagescompanyservice .section-header .section-title { max-width:22ch; }
body.d4y-page-about .elementor-widget-synckpagescompanyservice .section-header p { max-width:none; font-size:17px; line-height:1.65; margin-bottom:0; }
body.d4y-page-about .elementor-widget-synckpagescompanyservice .hero-service-about-body p { margin-bottom:20px; }
body.d4y-page-about .elementor-widget-synckpagescompanyservice .hero-service-about-body li { padding:11px 0; }
body.d4y-page-about .elementor-widget-synckpagesservice .service-area { padding:48px 0; }
body.d4y-page-about .elementor-widget-synckpagesourteam .our-team-2-area { padding:48px 0; }
body.d4y-page-about .elementor-widget-synckpagesaboutservice .about-service3-area { padding:48px 0; }
body.d4y-page-about .elementor-widget-synckpagesaboutservice .custom-row { align-items:center; }
body.d4y-page-about .elementor-widget-synckpagesaboutservice .content-box { min-width:0; width:100%; max-width:none; }
body.d4y-page-about .elementor-widget-synckpagesaboutservice .content-box p:last-of-type { margin-bottom:20px; }
body.d4y-page-about .elementor-widget-synckpagescta .cta-area { padding:32px 0 48px; }
@media(max-width:991px) {
 body.d4y-page-about .elementor-widget-synckpagescompanyservice .hero-service-about { gap:20px 28px; }
 body.d4y-page-about .d4y-about-client-grid li { flex-basis:25%; }
}
@media(max-width:767px) {
 body.d4y-page-about .hero-company-boxes { padding-bottom:16px; gap:12px; margin-top:24px; }
 body.d4y-page-about .hero-company-boxes .hero-company-box { padding:16px; }
 body.d4y-page-about .hero-company-boxes .hero-company-box h2 { font-size:23px; margin-bottom:8px; }
 body.d4y-page-about .hero-company-boxes .hero-company-box :is(h3,h4) { font-size:17px; }
 body.d4y-page-about .hero-about-wrap { padding-bottom:8px; }
 body.d4y-page-about .d4y-about-clients-block { padding:8px 0 28px; }
 body.d4y-page-about .d4y-about-clients-heading { align-items:flex-start; gap:12px; padding-bottom:10px; }
 body.d4y-page-about .d4y-about-clients-heading h2 { font-size:15px; padding-top:11px; }
 body.d4y-page-about .d4y-about-clients-heading a { font-size:12px; flex:none; }
 body.d4y-page-about .d4y-about-client-grid li { flex-basis:calc(100% / 3); height:72px; padding:8px 4px; }
 body.d4y-page-about .d4y-about-client-mark { height:56px; padding:8px; }
 body.d4y-page-about .d4y-about-client-art-normalized { width:min(100%,calc(38px * var(--art-ratio))); }
 body.d4y-page-about .elementor-widget-synckpagescompanyservice .company-service-area { padding:8px 0 32px; }
 body.d4y-page-about .elementor-widget-synckpagescompanyservice .hero-service-about { grid-template-columns:minmax(0,1fr); gap:20px; }
 body.d4y-page-about .elementor-widget-synckpagescompanyservice .hero-service-about>img { height:200px; }
 body.d4y-page-about .elementor-widget-synckpagesservice .service-area,
 body.d4y-page-about .elementor-widget-synckpagesourteam .our-team-2-area,
 body.d4y-page-about .elementor-widget-synckpagesaboutservice .about-service3-area { padding:32px 0; }
 body.d4y-page-about .elementor-widget-synckpagescta .cta-area { padding:24px 0 32px; }
}
@media(prefers-reduced-motion:reduce) { body.d4y-page-about .d4y-about-client-grid img { transition:none; } }
body.d4y-page-about .d4y-about-story .hero-service-about>img { object-position:center 68%; }
