/* Photos support the nearby explanation instead of becoming separate stops. */
html body .editorial-layout{display:grid;gap:30px;align-items:center}
html body .editorial-layout .flow-copy{width:auto!important;max-width:none!important;min-width:0;margin:0!important}
html body .flow-photos{display:grid;gap:18px;min-width:0;align-self:center}
html body .flow-photos figure{margin:0;min-width:0}
html body .flow-photos img.service-scene{display:block;width:100%;height:auto;aspect-ratio:3/2!important;object-fit:contain!important;border-radius:16px}
html body .project-onsite-proof figure{margin:0 0 22px}
html body .project-onsite-proof img{width:100%;height:auto;border-radius:14px}
@media(min-width:1000px){
html body:not([data-nav-key="home"]) main .container:has(img){width:min(1200px,calc(100% - 64px))}
html body .editorial-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(32px,4vw,64px)}
html body .editorial-layout .flow-copy.help-layout{display:flex;flex-direction:column;gap:22px;align-items:stretch}
html body .editorial-layout .help-intro{position:static;max-width:none;text-align:left;margin:0}
html body .editorial-layout .help-points{grid-template-columns:1fr;gap:0}
html body .editorial-layout .help-point{padding:16px 0;background:transparent;border:0;border-top:1px solid #dfe2ec;box-shadow:none}
html body .editorial-layout .help-point:first-child{padding-top:0;border-top:0}
html body .editorial-layout .help-point p{font-size:1rem;line-height:1.55}
html body .editorial-layout .help-list{padding:18px 20px;box-shadow:none;border-radius:12px}
html body .editorial-layout .help-list ul{grid-template-columns:repeat(2,minmax(0,1fr));font-size:.93rem;gap:10px 20px}
html body .editorial-layout .section-head{text-align:left;margin:0 0 24px;max-width:none}
html body .editorial-layout h2{font-size:clamp(1.7rem,2.5vw,2.35rem);line-height:1.17}
html body .editorial-layout .lead{font-size:1.08rem;line-height:1.6}
html body .editorial-layout .service-text-grid{grid-template-columns:1fr;gap:0}
html body .editorial-layout .service-text-card{padding:16px 0;background:transparent;box-shadow:none;border:0;border-bottom:1px solid #e0e3ee;border-radius:0;min-height:0}
html body .editorial-layout .service-text-card:last-child{border-bottom:0}
html body .editorial-layout .service-links{grid-template-columns:1fr}
html body .flow-photos--pair{max-width:420px;justify-self:end;width:100%}
html body .editorial-layout .hub-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
html body .editorial-layout .hub-service-card{padding:18px;box-shadow:none}
html body .hero-grid,html body.variant-c .hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;text-align:left;align-items:center}
html body.variant-c .hero-grid>div{margin:0;max-width:none}
html body.variant-c .hero .lead{margin-inline:0}
html body.variant-c .hero-actions{justify-content:flex-start}
html body .hero-grid>.hero-card,html body.variant-c .hero-grid>.hero-card{width:100%;max-width:560px;margin:0;justify-self:end}
html body .hero-card img.service-scene{display:block;max-height:380px;object-fit:contain!important;aspect-ratio:3/2!important}
html body .section,html body .related-section{padding-block:64px}
html body .section-head{margin-bottom:28px}
html body .ai-proof-layout{grid-template-columns:1fr 1fr;align-items:center;gap:36px}
html body .ai-proof-gallery img{min-height:0;height:auto;aspect-ratio:3/4;object-fit:cover}
html body .ai-proof-gallery figcaption{font-size:.83rem;line-height:1.45}
html body .project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
html body .project-card h2{font-size:1.2rem;line-height:1.3}
html body .project-onsite-proof{gap:28px}
html body .project-onsite-proof .path-panel{padding:24px}
html body .landing-photo-comparison .hero-redesign-visual{max-width:800px}
html body .web-hero .landing-photo-hero{max-width:580px;justify-self:end}
html body .search-section .search-explain-cards{grid-template-columns:1fr;gap:16px}
html body .search-section .search-explain-card{padding:20px}
html body[data-nav-key="home"] .hero-redesign .hero-image-shell{width:min(560px,100%)!important}
html body .recent-work-track{grid-auto-columns:calc((100% - 3 * .85rem)/4)}
}
@media(max-width:999px){html body .flow-photos{width:min(580px,100%);margin-inline:auto}html body .flow-photos--pair{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}html body .editorial-layout{gap:24px}}
@media(max-width:600px){html body .flow-photos--pair{grid-template-columns:1fr;width:min(440px,100%)}html body .flow-photos{max-width:440px}}
@media(min-width:1000px){
html body.service-page .hero-grid>div{padding:0;border:0;background:transparent}
html body.service-page .hero h1{font-size:clamp(38px,3.3vw,52px);line-height:1.12;letter-spacing:-.035em}
html body .editorial-layout .help-list{position:static!important;top:auto!important}
html body .editorial-layout .lifecycle{grid-template-columns:1fr;gap:16px}
html body .editorial-layout .lifecycle article{padding:16px 0;border:0;border-top:1px solid #e0e3ee;box-shadow:none;background:transparent}
html body .editorial-layout .lifecycle article:first-child{border-top:0}
html body .editorial-layout .lifecycle small{font-size:.75rem;letter-spacing:.04em}
html body .visual-grid:has(>.visual-card:first-child:nth-last-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(min-width:1000px){html body.service-page .hero-card{transform:none;outline:0;outline-offset:0}html body .editorial-layout .help-list ul{margin-bottom:0}}
/* Keep overview cards and secondary page sections in proportion. */
@media(min-width:1000px){
html body #capabilities>.editorial-layout{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:32px;align-items:start}
html body #capabilities .hub-service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
html body #capabilities .hub-service-card{padding:20px;min-width:0}
html body #capabilities .hub-service-card h3{font-size:1.08rem;line-height:1.3}
html body #capabilities .hub-service-card p{font-size:.92rem;line-height:1.55}
html body #capabilities .flow-photos{align-self:center}
html body .related-section{padding-block:38px}
html body .faq-wrap{padding-block:48px}
}
@media(max-width:600px){
html body .section,html body .related-section{padding-block:40px}
html body .section-head{margin-bottom:22px}
html body .flow-photos{gap:14px}
html body .cta-band p,html body .hub-cta p{line-height:1.6}
}
@media(max-width:900px){
html body.experience-ready footer.footer{padding-bottom:calc(48px + env(safe-area-inset-bottom))!important}
html body.experience-ready.has-experience-return-help footer.footer{padding-bottom:calc(100px + env(safe-area-inset-bottom))!important}
}
