/* Shared product signatures and homepage entry points. */
.engine-logo-image{display:block;width:300px;max-width:100%;height:auto;flex:none}
.dg-unit.engine-logo-image{width:360px}
.dg-related .engine-logo-image,.id-related-grid .engine-logo-image{width:300px;margin:28px 0 20px}
.cs-signature .engine-logo-image{width:340px}
.about-engines a>.engine-logo-image{width:100%;max-width:100%;height:auto}
.home-engine-unit>.engine-logo-image{width:340px;max-width:100%;height:auto}
#services .service-index .home-engine-unit>.engine-logo-image{width:340px;height:auto}
.id-logo-face>.engine-logo-image{width:100%;height:auto}
.id-service-intro>.engine-logo-image{width:380px;height:auto;max-width:100%}
@media(max-width:760px){.dg-unit.engine-logo-image,.cs-signature .engine-logo-image{width:300px}.home-engine-unit>.engine-logo-image{width:280px}}
.engine-product-unit{display:inline-flex;align-items:center;gap:.25em;color:#fff;font-weight:800;letter-spacing:-.055em;line-height:1}
.engine-product-unit>.engine-service-symbol{width:.85em;height:.85em;margin-right:.14em;flex:none}
.engine-product-unit>svg:last-child{width:3.5em;height:.62em;flex:none}
.home-engine-unit{display:block;font-size:clamp(25px,2.2vw,40px);margin:0 0 22px;color:#fff}
.home-engine-unit>svg{width:clamp(210px,19vw,310px);height:auto;max-width:100%}
#services .service-index a{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:24px!important;text-decoration:none;border:1px solid var(--line);border-radius:5px}
#services .service-index{display:grid;gap:12px;align-content:start}
#services .service-index .home-engine-unit{font-size:clamp(24px,1.9vw,34px);margin:0}
#services .service-index a .engine-product-unit{display:inline-flex;font-size:inherit;line-height:1;color:#fff;gap:.25em}
#services .service-index a .engine-product-unit>span{display:inline;font-size:inherit;line-height:1;color:inherit}
#services .service-index a>span:last-child{font-size:14px;line-height:1.5;color:var(--muted,#b8c0ba)}
.home-engine-link{display:inline-flex;align-items:center;justify-content:center;background:#efeee8;color:#1c2422!important;border:0;border-radius:3px;padding:15px 20px;font-weight:750;text-decoration:none;margin:24px 0}
.home-engine-link:hover{background:#ff6947}
.id-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.id-related-grid .engine-product-unit{font-size:clamp(22px,2vw,31px);margin:30px 0 22px}
.id-related-grid .engine-product-unit .engine-service-symbol{width:.85em;height:.85em;margin:0 .14em 0 0}
.id-related-grid .engine-product-unit>svg:last-child{width:3.5em;height:.62em}
.id-related-grid h3{font-size:18px}
.mega-engines{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.mega-engines a{display:block;padding:10px 12px;border:1px solid var(--line,#49514c);border-radius:4px;font-size:13px;font-weight:700;color:inherit;text-decoration:none}
.mega-engines a:hover{border-color:#ff6947}
.about-engines{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:40px 0 56px}
.about-engines a{display:flex;flex-direction:column;justify-content:center;gap:18px;border:1px solid var(--line);padding:24px 18px;border-radius:4px;text-decoration:none;color:#fff}
.about-engines .engine-product-unit{font-size:23px}
.about-engines a>svg{width:210px;max-width:100%;height:auto}
.about-engines a>span:last-child{font-size:13px;color:var(--muted,#b8c0ba)}
.about-engines a:hover{border-color:#ff6947}
@media(max-width:1100px){.about-engines{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.about-engines{grid-template-columns:1fr}}
@media(max-width:760px){.id-related-grid{grid-template-columns:1fr!important}.home-engine-unit{font-size:25px}#services .service-index a{padding:20px!important}#services .service-index .home-engine-unit{font-size:clamp(17px,5.6vw,24px);width:100%}.home-engine-link{min-height:48px}}
@media(prefers-reduced-motion:reduce){.home-engine-link{transition:none}}
/* Approved engine logos v176 */
/* Approved stacked SVG signatures. No duplicate symbol, font or raster dependency. */
.engine-logo-image{display:block;width:260px;max-width:100%;height:auto;flex:none}
.dg-unit.engine-logo-image,.cs-signature .engine-logo-image,.id-service-intro>.engine-logo-image{width:280px}
.cs-signature{height:auto;min-height:0;align-items:flex-start;margin-bottom:32px}
.dg-related .engine-logo-image,.id-related-grid .engine-logo-image{width:240px;margin:0 0 22px}
.about-engines a>.engine-logo-image{width:240px;max-width:100%;height:auto}
.home-engine-unit>.engine-logo-image,#services .service-index .home-engine-unit>.engine-logo-image{width:260px;height:auto}
.about-engines a{align-items:center;text-align:center}
:is(#journey .reflow-service,#main-content .mobile-service) .home-service-mark .id-logo-face{padding:22px}
:is(#journey .reflow-service,#main-content .mobile-service) .home-service-mark .engine-logo-image{width:100%;height:auto;margin:0}
.id-hero-monogram:has(+.engine-logo-image[data-logo-version="176"]){display:none}
.engine-logo-image[data-logo-version="176"]~.id-logo-face-label{margin-top:20px}
@media(max-width:767px){
 .mobile-engine-grid{grid-template-columns:1fr}
 .mobile-engine-grid>a{align-items:center;text-align:center}
 .mobile-engine-grid .engine-logo-image{width:240px;height:auto;margin:0 auto}
 .dg-unit.engine-logo-image,.cs-signature .engine-logo-image,.id-service-intro>.engine-logo-image{width:240px}
}
/* Homepage engine lineup v177 */
/* A compact, connected lineup. Approved SVGs remain unchanged. */
#services .service-index.engine-lineup,.mobile-engine-grid.engine-lineup{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:14px;align-content:start}
#services .service-index.engine-lineup>a,.mobile-engine-grid.engine-lineup>a{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;padding:22px!important;border:1px solid #69736b66;border-radius:2px;background:#25302b;box-shadow:none;text-align:left;text-decoration:none;min-width:0;transition:border-color .2s,background .2s}
#services .service-index.engine-lineup>a:nth-child(2),.mobile-engine-grid.engine-lineup>a:nth-child(2){background:#29332e}
#services .service-index.engine-lineup>a:nth-child(3),.mobile-engine-grid.engine-lineup>a:nth-child(3){background:#29332e}
#services .service-index.engine-lineup>a{margin:0}
#services .engine-lineup .engine-lineup-top>span,#services .engine-lineup .engine-lineup-action>span{font-size:inherit;line-height:inherit;margin:0}
#services .engine-lineup .engine-lineup-top>.engine-lineup-arrow{font-size:17px}
#services .engine-lineup .engine-lineup-action>span{font-size:16px}
#services .engine-lineup .engine-lineup-top{margin:0}
#services .engine-lineup .engine-lineup-top,.engine-lineup .engine-lineup-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:9px;line-height:1.4;font-weight:650;letter-spacing:.11em;text-transform:uppercase;color:#b8c0ba}
.engine-lineup .engine-lineup-arrow{display:grid;place-items:center;width:25px;height:25px;border:1px solid #69736b66;border-radius:50%;font-size:17px;color:#ff6947;letter-spacing:0}
#services .service-index.engine-lineup .home-engine-unit,.engine-lineup .home-engine-unit{display:grid;place-items:center;margin:14px 0 12px;min-width:0;width:100%}
#services .service-index.engine-lineup .engine-logo-image,.mobile-engine-grid.engine-lineup .engine-logo-image{display:block;width:100%;max-width:170px;height:auto;margin:0}
.engine-lineup .engine-lineup-copy{display:block;border-top:1px solid #69736b66;padding-top:20px;margin-top:auto}
.engine-lineup .engine-lineup-copy strong{display:block;color:#f4f1ea;font-size:16px;font-weight:650;line-height:1.35;letter-spacing:-.025em}
.engine-lineup .engine-lineup-copy>span{display:block;color:#b8c0ba;font-size:13px;font-weight:300;line-height:1.65;margin-top:8px}
#services .service-index.engine-lineup a>.engine-lineup-action,.engine-lineup .engine-lineup-action{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px;font-size:11px;font-weight:650;line-height:1.4;color:#f4f1ea}
.engine-lineup .engine-lineup-action>span{color:#ff6947;font-size:16px}
#services .service-index.engine-lineup>a:hover,.mobile-engine-grid.engine-lineup>a:hover{background:#303c33;border-color:#ff6947}
.engine-lineup a:focus-visible{outline:2px solid #ff6947;outline-offset:5px}
@media(min-width:768px) and (max-width:1100px){
 #services .service-index.engine-lineup{grid-template-columns:1fr}
 #services .service-index.engine-lineup>a{padding:17px!important}
 #services .engine-lineup .engine-lineup-top{font-size:8px;letter-spacing:.06em}
 #services .engine-lineup .engine-lineup-copy strong{font-size:14px}
 #services .engine-lineup .engine-lineup-copy>span{font-size:12px}
}
@media(max-width:519px){
 .mobile-engine-grid.engine-lineup{grid-template-columns:1fr;gap:12px}
 .mobile-engine-grid.engine-lineup>a{display:grid;grid-template-columns:136px minmax(0,1fr);column-gap:18px;padding:20px!important}
 .mobile-engine-grid.engine-lineup .engine-lineup-top{grid-column:1/-1;margin-bottom:22px}
 .mobile-engine-grid.engine-lineup .home-engine-unit{grid-column:1;grid-row:2;margin:0;align-self:center}
 .mobile-engine-grid.engine-lineup .engine-lineup-copy{grid-column:2;grid-row:2;border:0;padding:0;margin:0;align-self:center}
 .mobile-engine-grid.engine-lineup .engine-lineup-copy strong{font-size:15px}
 .mobile-engine-grid.engine-lineup .engine-lineup-copy>span{font-size:12px;line-height:1.6}
 .mobile-engine-grid.engine-lineup .engine-lineup-action{grid-column:1/-1;border-top:1px solid #69736b66;padding-top:15px;margin-top:22px}
}
@media(max-width:350px){.mobile-engine-grid.engine-lineup>a{grid-template-columns:115px minmax(0,1fr);column-gap:12px;padding:16px!important}.mobile-engine-grid.engine-lineup .engine-lineup-copy strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){.engine-lineup>a{transition:none!important}}
