
:where(html:not(.klg-off)) .btn{white-space:nowrap}
@media (min-width:900px){
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):has(>:nth-child(2):last-child,>:nth-child(3):last-child,>:nth-child(4):last-child,>:nth-child(5):last-child,>:nth-child(6):last-child,>:nth-child(7):last-child,>:nth-child(8):last-child,>:nth-child(9):last-child,>:nth-child(10):last-child){grid-template-columns:repeat(12,minmax(0,1fr))}
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):has(>:nth-child(2):last-child)>*{grid-column:span 6}
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):is(:has(>:nth-child(3):last-child),:has(>:nth-child(5):last-child),:has(>:nth-child(6):last-child),:has(>:nth-child(9):last-child))>*{grid-column:span 4}
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):has(>:nth-child(5):last-child)>:nth-child(4){grid-column:3/span 4}
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):has(>:nth-child(5):last-child)>:nth-child(5){grid-column:7/span 4}
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):is(:has(>:nth-child(4):last-child),:has(>:nth-child(8):last-child))>*{grid-column:span 6}
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):is(:has(>:nth-child(7):last-child),:has(>:nth-child(10):last-child))>*{grid-column:span 4}
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):is(:has(>:nth-child(7):last-child),:has(>:nth-child(10):last-child))>:nth-child(-n+4){grid-column:span 3}
}
@media (min-width:1100px){
html:not(#klg):not(#klg2) :is(#gallery-list,.gallery,.gallery-grid,.work):is(:has(>:nth-child(4):last-child),:has(>:nth-child(8):last-child))>*{grid-column:span 3}
}
/* the rating badge over a photo or on a low-contrast background (set by kitlocal-g.js): a solid pill in the page's own surface + ink colours,
   drawn with background + box-shadow only, so nothing moves when it switches on (no layout shift) */
html:not(#klg):not(#klg2) .kln-rate.klg-pill{width:fit-content;max-width:100%;border-radius:999px;background:var(--surface,#fff);box-shadow:0 0 0 5px var(--surface,#fff);color:var(--ink,#111)}
html:not(#klg):not(#klg2) .kln-rate.klg-pill .kln-stars{color:var(--accent-ink,var(--accent,#7a5e1c))}
html:not(#klg):not(#klg2) .kln-rate.klg-pill :not(.kln-stars){color:var(--ink,#111)}
/* team cards with no photo: hide the icon placeholder tile (a box holding only an svg); the name, role and bio stay (founder: icon tiles read as breakage; owner photo or none) */
html:not(#klg):not(#klg2) [data-sec=team] :is(div,figure):has(>svg:only-child):not(:has(img)){display:none}
html:not(#klg):not(#klg2) [data-sec=team] :is(article,li):is(:has(>div>svg:only-child),:has(>figure>svg:only-child)):not(:has(img)){display:flex;flex-direction:column;align-items:flex-start;gap:8px}
html:not(#klg):not(#klg2) [data-sec=team] :is(article,li):is(:has(>div>svg:only-child),:has(>figure>svg:only-child)):not(:has(img))>*{margin:0;grid-column:auto;grid-row:auto}
