/* Homepage layout: scoped to avoid changing other public pages. */
.home-page .home-services__grid{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:64px;align-items:start}
.home-page .home-services__intro{min-width:0}
.home-page .home-services__kicker{margin:0 0 16px;color:var(--color-accent-700);font:700 13px/1.5 var(--font-heading);letter-spacing:.14em;text-transform:uppercase}
.home-page .home-services h2{margin:0 0 20px;font:700 clamp(30px,3vw,44px)/1.08 var(--font-heading);text-transform:uppercase;overflow-wrap:anywhere}
.home-page .home-services__intro>p:last-child{margin:0;color:var(--color-text);opacity:.75;font-size:16px;line-height:1.6}
.home-page .home-services__list{min-width:0;border-top:1px solid var(--color-divider)}
.home-page .home-service{display:grid;grid-template-columns:36px minmax(0,1fr) auto;grid-template-areas:"number title price" ". description price";column-gap:20px;row-gap:12px;align-items:start;padding:28px 0;border-bottom:1px solid var(--color-divider);color:var(--color-text);text-decoration:none}
.home-page .home-service>*{min-width:0;margin:0}
.home-page .home-service__number{grid-area:number;font:500 28px/1.15 var(--font-heading);color:var(--color-accent-700)}
.home-page .home-service__title{grid-area:title;font:700 clamp(24px,2.3vw,32px)/1.15 var(--font-heading);text-transform:uppercase;overflow-wrap:anywhere}
.home-page .home-service__description{grid-area:description;max-width:48ch;font-size:16px;line-height:1.55;opacity:.75}
.home-page .home-service__price{grid-area:price;font:600 18px/1.5 var(--font-heading);text-align:right;white-space:nowrap}
.home-page .home-service:hover .home-service__title{color:var(--color-accent-700)}
.home-page .home-service:focus-visible{outline:3px solid var(--color-accent-700);outline-offset:5px}
.home-page #learning-space{border-top:1px solid var(--color-divider)}
@media(max-width:1100px){.home-page .home-services__grid{grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:40px}.home-page .home-service{grid-template-areas:"number title title" ". description description" ". price price"}.home-page .home-service__price{text-align:left}}
@media(max-width:800px){.home-page .home-services__grid{grid-template-columns:minmax(0,1fr);gap:28px}.home-page .home-services__intro{max-width:560px}.home-page .home-service{grid-template-areas:"number title price" ". description price"}.home-page .home-service__price{text-align:right}}
@media(max-width:600px){.home-page .home-service{grid-template-columns:28px minmax(0,1fr);grid-template-areas:"number title" ". description" ". price";column-gap:12px;padding:24px 0}.home-page .home-service__price{text-align:left;white-space:normal}.home-page .home-service__number{font-size:24px}.home-page .home-turnkey{padding:24px!important;gap:28px!important}.home-page .home-turnkey .btn{white-space:normal;text-align:center}.home-page .home-case-caption{left:16px!important;right:16px;bottom:20px!important;padding:22px!important;max-width:none!important}.home-page [data-steps]{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){.home-page [data-par]{transform:none!important;will-change:auto!important}.home-page .rise{opacity:1;transform:none}.home-page *{scroll-behavior:auto!important}}
/* Keep the hero's large letters separate and let short screens grow with content. */
.home-page #top{height:auto!important;min-height:max(620px,92svh)!important}
.home-page #top>.lab-container{height:auto!important;min-height:inherit;padding-top:100px}
.home-page #top h1{line-height:1!important}
.home-page .site-shell-footer__inner{grid-template-columns:180px minmax(0,1fr) 200px;gap:32px}
.home-page .site-shell-footer__nav{grid-template-columns:repeat(4,minmax(0,1fr))}
.home-page .site-shell-footer__inner>*{min-width:0}
@media(max-width:1100px){.home-page .site-shell-footer__inner{grid-template-columns:160px minmax(0,1fr)}.home-page .site-shell-footer__nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.home-page .site-shell-footer__inner{grid-template-columns:minmax(0,1fr)}}
