/* Sunward review, November 2026. Preserve full machine silhouettes and native scrolling. */
.story-gallery .gallery-slide,.story-gallery .gallery-stage{background:var(--ink)}
.story-gallery .gallery-slide img,.story-gallery .gallery-slide.is-photo img{object-fit:contain}
.cover-cranes .cover-reveal{background:var(--ink);opacity:0;transition:clip-path .8s var(--ease),opacity .55s var(--ease)}
.cover-cranes .cover-reveal img{object-fit:cover;object-position:52% 61%;opacity:1;transform:none}
.cover-cranes:not(.is-worksite-ready) .cover-machine img{opacity:1;transform:scale(1.12)}
.cover-cranes:not(.is-worksite-ready):is(:hover,:focus-visible){color:var(--ink)}
@media(prefers-reduced-motion:no-preference){
 .cover-cranes.is-worksite-ready:focus-visible{color:var(--white)}
 .cover-cranes.is-worksite-ready:focus-visible .cover-reveal{opacity:1;clip-path:inset(0)}
 .cover-cranes.is-worksite-ready:focus-visible .cover-reveal img{transform:scale(1)}
 .cover-cranes.is-worksite-ready:focus-visible .cover-machine img{opacity:0;transform:translateY(-1rem) scale(1.08)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .cover-cranes.is-worksite-ready:hover .cover-reveal{opacity:1}
}
.category-browser{grid-template-columns:clamp(12rem,16vw,18rem) minmax(0,1fr);gap:clamp(1.5rem,3vw,3rem)}
.browser-tabs>button{min-block-size:3.8rem;padding:.5rem .65rem;grid-template-columns:2.7rem minmax(0,1fr) .8rem}
.browser-tabs>button>img{inline-size:2.7rem;block-size:2.4rem}
.browser-tabs>button>span{font-size:.875rem}
.browser-panel{max-inline-size:none}
.browser-feature{display:block;block-size:clamp(9rem,17svh,12rem);min-block-size:0}
.browser-feature-copy{display:flex;flex-direction:column;justify-content:center;block-size:100%;padding:clamp(1.25rem,2vw,2rem)}
.browser-feature-copy h2{font-size:clamp(2rem,3.4vw,3.8rem);line-height:1.1;max-inline-size:none;white-space:nowrap;text-wrap:nowrap}
.browser-feature-copy p{font-size:1rem;line-height:1.5;margin:.65rem 0 0;max-inline-size:60ch}
.browser-model-heading{justify-content:flex-end;margin-block:.8rem .65rem;min-block-size:1.5rem}
.browser-models{gap:1.75rem 1.25rem}
.browser-models .product-visual{aspect-ratio:auto;block-size:clamp(13rem,min(39svh,70cqi),38rem);padding:clamp(.75rem,1.3vw,1.5rem)}
.browser-models .product-caption{padding-block:.75rem .35rem}
.browser-models .product-card:hover .product-visual img{transform:none}
.category-mobile-tools{display:none}
html[lang="ka"] .browser-feature-copy h2{font-size:clamp(1.6rem,2.4vw,3.2rem)!important;line-height:1.15}
@media(min-width:56.001rem){
 .browser-heading{padding-block:2rem}
 .browser-heading h1{font-size:clamp(3rem,4vw,3.8rem)}
 .browser-navigation{position:sticky;inset-block-start:calc(var(--header) + 1rem)}
}
@media(min-width:56.001rem) and (max-height:48rem){
 .browser-feature-copy{padding:1rem 1.25rem}
 .browser-model-heading{margin-block:.5rem .45rem;min-block-size:1.3rem}
 .browser-models .product-category{display:none}
}
@media(max-width:70rem) and (min-width:56.001rem){
 .category-browser{grid-template-columns:12rem minmax(0,1fr);gap:1.25rem}
 .browser-models .product-visual{aspect-ratio:auto}
}
@media(max-width:56rem){
 .category-browser{grid-template-columns:minmax(0,1fr)}
 .category-browser.is-strip-ready .browser-navigation{display:block;position:static;min-inline-size:0}
 .is-strip-ready .browser-mobile-select{display:none}
 .category-mobile-tools{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-block-end:.5rem}
 .category-mobile-tools p{font-size:.8125rem;line-height:1.4;margin:0;max-inline-size:28ch;color:var(--muted)}
 .category-mobile-tools>div{display:flex;gap:.35rem;flex-shrink:0}
 .category-step{display:grid;place-items:center;inline-size:2.75rem;block-size:2.75rem;border:1px solid var(--line);background:var(--paper)}
 .category-step:disabled{opacity:.4}
 .category-previous svg{transform:rotate(180deg)}
 .browser-tabs{position:relative;display:flex;flex-direction:row;gap:.5rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:.2rem;padding:.3rem .2rem .8rem;overscroll-behavior-x:contain;scrollbar-width:thin}
 .browser-tabs>button{display:grid;flex:0 0 clamp(10rem,56vw,14rem);grid-template-columns:3rem minmax(0,1fr);min-block-size:5.1rem;scroll-snap-align:center;border-color:var(--line);padding:.65rem;gap:.65rem;touch-action:pan-x pan-y pinch-zoom}
 .browser-tabs>button>img{inline-size:3rem;block-size:3.2rem}
 .browser-tabs>button>span{font-size:.875rem;line-height:1.45}
 .browser-tabs>button>small{display:none}
 .browser-tabs>button:focus-visible{outline-offset:-3px}
 .browser-panel{max-inline-size:none}
 .browser-feature{block-size:9rem;min-block-size:0}
 .browser-feature-copy{padding:1.25rem}
 .browser-feature-copy h2{font-size:clamp(2rem,4vw,2.6rem)}
 html[lang="ka"] .browser-feature-copy h2{font-size:clamp(1.5rem,3.4vw,2rem)!important}
 .browser-models .product-visual{aspect-ratio:auto;block-size:clamp(13rem,min(35svh,76cqi),24rem)}
}
@media(max-width:40rem){
 .browser-feature{display:block;block-size:10rem}
 .browser-feature-copy{padding:1.25rem 1rem}
 .browser-feature-copy h2{font-size:clamp(1.7rem,8vw,2.25rem)}
 .browser-feature-copy p{max-inline-size:none}
 .browser-models{grid-template-columns:minmax(0,1fr);gap:2rem}
 .browser-models .product-visual{aspect-ratio:auto;block-size:clamp(17rem,74vw,27rem);padding:1rem}
 .browser-models .product-caption{gap:.35rem}
 .browser-models .product-caption h3{font-size:2rem}
 html[lang="ka"] .browser-feature-copy h2{font-size:clamp(1.25rem,5.4vw,1.5rem)!important}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) and (forced-colors:none){
 select,.browser-mobile-select select,.category-step{cursor:url('assets/cursor-yellow.svg') 4 3,pointer}
}
@media(prefers-reduced-motion:reduce){.browser-panel *{animation:none!important;transition:none!important}}
/* Binary language switch: one action, stable geometry and visible current state. */
.language #language-button{inline-size:2.75rem;min-inline-size:2.75rem;min-block-size:2.75rem;justify-content:center;gap:.2rem;padding:0;font-size:.65rem;white-space:nowrap}
#language-button [data-locale-mark]{font-weight:500;text-underline-offset:.3em;text-decoration-thickness:2px}
#language-button [data-active="true"]{font-weight:800;text-decoration:underline}
#language-button .language-divider{font-weight:400}
@media(max-width:40rem){#site-header{column-gap:.75rem}}
/* EN/KA share the same navigation slots, gaps and hit-area geometry. */
@media(min-width:84.001rem){
 #primary-nav,html[lang="ka"] #primary-nav{display:grid;grid-template-columns:112px 100px 144px 92px 90px 76px 70px;gap:clamp(.5rem,.8vw,.9rem);block-size:44px;flex:none}
 #primary-nav>a,#products-link{display:flex;align-items:center;block-size:44px;min-block-size:44px;min-inline-size:0;padding-block:0}
 .products-nav-trigger{display:grid;grid-template-columns:minmax(0,1fr) 2rem;gap:.15rem;inline-size:100%;block-size:44px}
 #products-toggle{inline-size:2rem;block-size:44px}
}
@media(max-width:84rem){
 #primary-nav,html[lang="ka"] #primary-nav{gap:.1rem}
 #primary-nav>a,#products-link{display:flex;align-items:center;block-size:3rem;min-block-size:3rem;padding-block:0}
 .products-nav-trigger{display:grid;grid-template-columns:minmax(0,1fr) 2.8rem;gap:.15rem;min-block-size:3rem}
 #products-link{inline-size:100%}
}
/* Case belongs to presentation. CMS values and body copy stay unchanged. */
/* Use projected Mtavruli codepoints directly: Georgian CSS casing can fold
   them back to Mkhedruli, despite reporting `uppercase` as computed style. */
html[lang="ka"] [data-display-uppercase]{font-family:'Noto Sans Georgian','Manrope',sans-serif!important}
html[lang="ka"] [data-display-uppercase],html[lang="ka"] [data-display-uppercase] *{text-transform:none!important}
