/* Foundations shared by SGI; visual application is scoped to the homepage. */
:root{
 --sgi-font:Grandstander,sans-serif;--sgi-type-note:14px;--sgi-type-body:18px;--sgi-type-title:28px;--sgi-type-section:40px;--sgi-type-display:96px;
 --sgi-leading-body:1.55;--sgi-leading-title:1.12;--sgi-weight-body:450;--sgi-weight-label:650;--sgi-weight-heading:800;
 --sgi-space-1:4px;--sgi-space-2:8px;--sgi-space-3:12px;--sgi-space-4:16px;--sgi-space-6:24px;--sgi-space-8:32px;--sgi-space-12:48px;--sgi-space-16:64px;--sgi-space-24:96px;
 --sgi-content-width:1160px;--sgi-reading-width:65ch;--sgi-page-gutter:32px;--sgi-section-space:96px;--sgi-radius-tile:8px;--sgi-radius-button:999px;
 --sgi-surface:var(--panel);--sgi-surface-secondary:var(--band);--sgi-text:var(--ink);--sgi-text-secondary:var(--muted);--sgi-action:var(--sgi-gold);
 --ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease-drawer:cubic-bezier(.32,.72,0,1);
 --sgi-duration-press:160ms;--sgi-duration-control:200ms;--sgi-duration-reveal:280ms;--sgi-reveal-distance:8px;
}
@media(max-width:780px){:root{--sgi-type-body:16px;--sgi-type-title:24px;--sgi-type-section:30px;--sgi-type-display:64px;--sgi-page-gutter:18px;--sgi-section-space:48px}}
body[data-page=index]{font-family:var(--sgi-font);font-size:var(--sgi-type-body);line-height:var(--sgi-leading-body);font-weight:var(--sgi-weight-body)}
body[data-page=index] ::selection{background:var(--sgi-yellow);color:var(--sgi-deep)}
body[data-page=index] main .wrap{width:min(var(--sgi-content-width),calc(100% - var(--sgi-page-gutter)*2))}
body[data-page=index] main :is(h1,h2,h3){letter-spacing:0;text-wrap:balance;line-height:var(--sgi-leading-title);font-weight:var(--sgi-weight-heading)}
body[data-page=index] main h1{font-size:var(--sgi-type-display)}
body[data-page=index] main h2{font-size:var(--sgi-type-section);margin-bottom:var(--sgi-space-6)}
body[data-page=index] main h3{font-size:var(--sgi-type-title)}
body[data-page=index] main p{max-width:var(--sgi-reading-width);font-size:var(--sgi-type-body);line-height:var(--sgi-leading-body);color:var(--sgi-text);margin-bottom:var(--sgi-space-6)}
body[data-page=index] main :is(.section,.repair-band,.location-band,.category-section){padding-block:var(--sgi-section-space)}
body[data-page=index] .section-heading{margin-bottom:var(--sgi-space-8)}
body[data-page=index] .section-heading p{margin-bottom:0}
body[data-page=index] .home-hero{min-height:580px}
body[data-page=index] .hero-content{padding-block:var(--sgi-space-16);max-width:none}
body[data-page=index] main .hero-slogan{font-size:var(--sgi-type-section);max-width:22ch;font-weight:var(--sgi-weight-heading);margin-block:var(--sgi-space-4) var(--sgi-space-6)}
body[data-page=index] .hero-description{max-width:48ch}
body[data-page=index] .hero-hours,body[data-page=index] .hero-scroll{font-size:var(--sgi-type-note)}
body[data-page=index] .repair-grid{grid-template-columns:.9fr 1.1fr;gap:var(--sgi-space-16)}
body[data-page=index] .repair-list{gap:var(--sgi-space-6)}
body[data-page=index] .repair-list>div{padding-block:var(--sgi-space-4)}
body[data-page=index] .repair-list strong{font-size:var(--sgi-type-body);margin-bottom:var(--sgi-space-2)}
body[data-page=index] .category-grid{gap:var(--sgi-space-6)}
body[data-page=index] .category-image{aspect-ratio:1}
body[data-page=index] .category-image img{object-position:center}
body[data-page=index] .category-body{padding:var(--sgi-space-6)}
body[data-page=index] .category-body>span{font-size:var(--sgi-type-note);line-height:var(--sgi-leading-body)}
body[data-page=index] .resource-strip{background:transparent;gap:var(--sgi-space-8)}
body[data-page=index] main :is(a,button):focus-visible{outline:3px solid var(--focus-ring);outline-offset:4px}
body[data-page=index] .sgi-brand-button:not([data-sgi-variant]){transition:transform var(--sgi-duration-press) var(--ease-out),filter var(--sgi-duration-control) ease,box-shadow var(--sgi-duration-control) ease}
body[data-page=index] .sgi-brand-button:not([data-sgi-variant]):active{transform:scale(.97)}
body[data-page=index] main .category{transition:transform var(--sgi-duration-control) var(--ease-out),box-shadow var(--sgi-duration-control) ease}
body[data-page=index] main .category:hover{transform:none}
@media(hover:hover) and (pointer:fine){body[data-page=index] main .category:hover{transform:translateY(-3px)}}
body[data-page=index][data-keyboard=true] :is(a,button){transition:none!important}
@media(max-width:780px){
 body[data-page=index] .home-hero{min-height:0}
 body[data-page=index] .hero-content{padding-block:var(--sgi-space-8)}
 body[data-page=index] main .hero-slogan{font-size:var(--sgi-type-title)}
 body[data-page=index] .repair-grid{grid-template-columns:1fr;gap:var(--sgi-space-8)}
 body[data-page=index] .category-grid{gap:var(--sgi-space-4)}
 body[data-page=index] .category-image{aspect-ratio:auto}
 body[data-page=index] .category-body{padding:var(--sgi-space-4)}
 body[data-page=index] .contact-strip{padding-block:var(--sgi-space-8)}
}
@media(prefers-reduced-motion:reduce){body[data-page=index] .sgi-brand-button:not([data-sgi-variant]),body[data-page=index] main .category{transition:opacity var(--sgi-duration-press) ease!important;transform:none!important}}
