/* Use a family with a real light face, rather than Arial's limited weights. */
#krepost-landing h1,#krepost-landing h2,#krepost-landing h3{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
#krepost-landing h1,#krepost-landing h2{font-weight:300}
#krepost-landing h3,#krepost-landing .kl-benefits h3{font-weight:400}
#krepost-landing .kl-extra-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:40px;padding-top:30px;border-top:1px solid var(--kl-border)}
#krepost-landing .kl-extra-products .kl-product-image{height:190px;background:var(--kl-soft)}
#krepost-landing .kl-extra-products .kl-site-photo{object-fit:contain}
#krepost-landing .kl-extra-products .kl-product-copy h3{font-size:21px}
#krepost-landing .kl-catalog-note{margin-top:24px;font-size:11px;max-width:720px}
#krepost-landing .kl-info-details{border-top:1px solid var(--kl-border);border-bottom:1px solid var(--kl-border)}
#krepost-landing .kl-info-details>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;list-style:none;cursor:pointer;font-size:13px;padding:17px 0;color:var(--kl-text)}
#krepost-landing .kl-info-details>summary::-webkit-details-marker{display:none}
#krepost-landing .kl-info-details>summary::after{content:'+';font-size:21px;color:var(--kl-accent)}
#krepost-landing .kl-info-details[open]>summary::after{content:'−'}
#krepost-landing .kl-benefit-more{grid-column:1/-1;margin-top:8px;border-bottom:0}
#krepost-landing .kl-benefit-extra{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 30px;padding:8px 0 16px}
#krepost-landing .kl-benefit-extra article{display:block;padding:0;border:0}
#krepost-landing .kl-benefit-extra h3{font-size:16px;margin:0 0 8px}
#krepost-landing .kl-benefit-extra p{font-size:12px}
#krepost-landing .kl-about-details{grid-column:1/-1;margin-top:5px}
#krepost-landing .kl-construction-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding-bottom:24px;margin:0}
#krepost-landing .kl-construction-types dt{font-size:16px;margin-bottom:8px}
#krepost-landing .kl-construction-types dd{margin:0;color:var(--kl-muted);font-size:12px}
#krepost-landing .kl-about-copy .kl-delivery-note{margin-top:18px;font-size:12px}

/* Images stay in the page: native horizontal scrolling, touch swipe and keyboard. */
#krepost-landing .kl-gallery-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:23px}
#krepost-landing .kl-gallery-filters{display:flex;flex-wrap:wrap;gap:8px}
#krepost-landing .kl-gallery-filters button{display:flex;align-items:center;gap:9px;min-height:42px;padding:9px 14px;border:1px solid var(--kl-border);background:transparent;color:var(--kl-text);font-size:12px;cursor:pointer}
#krepost-landing .kl-gallery-filters button[aria-pressed=true]{background:var(--kl-accent);color:var(--kl-button);border-color:var(--kl-accent)}
#krepost-landing .kl-gallery-filters button span{font-size:10px;opacity:.7}
#krepost-landing .kl-gallery-filters button:focus-visible,#krepost-landing .kl-gallery-arrows button:focus-visible,#krepost-landing [data-gallery-track]:focus-visible,#krepost-landing summary:focus-visible{outline:2px solid var(--kl-accent);outline-offset:3px}
#krepost-landing .kl-gallery-navigation{display:flex;align-items:center;gap:20px;margin-left:auto}
#krepost-landing [data-gallery-count]{white-space:nowrap;font-size:12px;color:var(--kl-muted);font-variant-numeric:tabular-nums}
#krepost-landing .kl-gallery-arrows{display:flex;gap:6px}
#krepost-landing .kl-gallery-arrows button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid var(--kl-border);color:var(--kl-text);background:var(--kl-bg);font-size:23px;cursor:pointer}
#krepost-landing .kl-gallery-arrows button:hover:not(:disabled){background:var(--kl-soft);border-color:var(--kl-accent)}
#krepost-landing .kl-gallery-arrows button:disabled{opacity:.3;cursor:default}
#krepost-landing .kl-works-grid{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--kl-accent) var(--kl-soft);padding-bottom:15px}
#krepost-landing .kl-works-grid>figure{flex:0 0 calc((100% - 66px)/4);min-width:0;margin:0;scroll-snap-align:start;scroll-margin:0}
#krepost-landing .kl-works-grid [hidden]{display:none}
#krepost-landing .kl-works-grid .kl-work-photo{height:auto;aspect-ratio:4/3;background:var(--kl-soft)}
#krepost-landing .kl-works-grid .kl-site-photo{object-fit:contain}
#krepost-landing .kl-works-grid figcaption{padding:14px}
#krepost-landing .kl-works-grid figcaption h3{font-size:16px;margin:8px 0}
#krepost-landing .kl-works-grid figcaption p{font-size:11px;max-width:470px}
#krepost-landing .kl-works-grid.is-single{justify-content:center}
#krepost-landing .kl-works-grid.is-single>figure:not([hidden]){flex-basis:min(340px,calc((100% - 22px)/2))}
#krepost-landing .kl-product>div[data-gallery]{position:relative}
#krepost-landing .kl-product-photos{display:flex;gap:0;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}
#krepost-landing .kl-product-photos::-webkit-scrollbar{display:none}
#krepost-landing .kl-product-photos>.kl-product-image{flex:0 0 100%;scroll-snap-align:start}
#krepost-landing .kl-product-photo-controls{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:4px 6px;background:var(--kl-bg);border:1px solid var(--kl-border);z-index:2}
#krepost-landing .kl-product-photo-controls .kl-gallery-arrows button{width:34px;height:34px;font-size:20px}
#krepost-landing .kl-equipment-pictures{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:32px}
#krepost-landing .kl-equipment-pictures figure{display:grid;grid-template-columns:180px 1fr;align-items:center;gap:22px;margin:0;padding:20px;border:1px solid #ffffff30;min-width:0}
#krepost-landing .kl-equipment-pictures img{display:block;width:180px;height:150px;object-fit:contain;background:#ffffff}
#krepost-landing .kl-equipment-pictures .kl-service-illustration{height:auto;aspect-ratio:4/3;object-fit:contain;object-position:center}
#krepost-landing .kl-equipment-pictures h3{font-size:18px;margin:0 0 9px}
#krepost-landing .kl-equipment-pictures p{font-size:12px}
#krepost-landing .kl-reviews-grid{align-items:start}
#krepost-landing .kl-review-rating{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--kl-muted);margin-bottom:16px}
#krepost-landing .kl-review-stars{color:var(--kl-accent);letter-spacing:2px;font-size:15px}
#krepost-landing .kl-review-more{margin:18px 0 12px}
#krepost-landing .kl-review-more>summary{display:flex;align-items:center;justify-content:space-between;list-style:none;padding:11px 0;border-top:1px solid var(--kl-border);color:var(--kl-accent);font-size:12px;cursor:pointer}
#krepost-landing .kl-review-more>summary::-webkit-details-marker{display:none}
#krepost-landing .kl-review-more>summary::after{content:'+';font-size:20px}
#krepost-landing .kl-review-more[open]>summary::after{content:'−'}
#krepost-landing .kl-review-more p{font-size:12px;line-height:1.7;margin:3px 0 12px}
#krepost-landing .kl-review-photos{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin-top:14px}
#krepost-landing .kl-review-photos img{flex:0 0 calc((100% - 10px)/2);width:calc((100% - 10px)/2);height:auto;aspect-ratio:1;object-fit:contain;scroll-snap-align:start;background:var(--kl-soft)}
@media(max-width:1000px){#krepost-landing .kl-equipment-pictures figure{grid-template-columns:1fr;gap:16px}#krepost-landing .kl-equipment-pictures img{width:100%;height:190px}}
@media(max-width:620px){
 #krepost-landing .kl-extra-products{grid-template-columns:1fr;margin-top:28px;padding-top:24px;gap:28px}
 #krepost-landing .kl-extra-products .kl-product-image{height:235px}
 #krepost-landing .kl-benefit-extra,#krepost-landing .kl-construction-types{grid-template-columns:1fr;gap:20px}
 #krepost-landing .kl-gallery-toolbar{gap:18px}
 #krepost-landing .kl-gallery-navigation{margin-left:0;width:100%;justify-content:space-between}
 #krepost-landing .kl-gallery-filters{gap:6px}
 #krepost-landing .kl-gallery-filters button{padding:9px 11px;min-height:44px}
 #krepost-landing .kl-works-grid{gap:16px}
 #krepost-landing .kl-works-grid>figure{flex-basis:calc((100% - 16px)/2)}
 #krepost-landing .kl-works-grid.is-single>figure:not([hidden]){flex-basis:calc((100% - 16px)/2)}
 #krepost-landing .kl-works-grid figcaption{padding:12px 10px}
 #krepost-landing .kl-works-grid figcaption h3{font-size:14px}
 #krepost-landing .kl-product-photo-controls .kl-gallery-arrows button{width:44px;height:44px}
 #krepost-landing .kl-equipment-pictures{grid-template-columns:1fr;gap:16px}
 #krepost-landing .kl-equipment-pictures figure{grid-template-columns:110px 1fr;gap:15px;padding:15px}
 #krepost-landing .kl-equipment-pictures img{width:110px;height:110px}
 #krepost-landing .kl-equipment-pictures h3{font-size:16px}
}
@media(prefers-reduced-motion:reduce){#krepost-landing [data-gallery-track]{scroll-behavior:auto}}
#krepost-landing .kl-policy{max-width:860px;margin:0 auto;padding:20px 0 44px}
#krepost-landing .kl-policy h1{font-size:clamp(28px,4vw,42px);line-height:1.2;letter-spacing:-.8px;margin:0 0 30px}
#krepost-landing .kl-policy :is(h2,h3,h4,h5){font-size:clamp(18px,2.4vw,24px);line-height:1.35;margin:32px 0 14px;letter-spacing:0}
#krepost-landing .kl-policy p,#krepost-landing .kl-policy div{line-height:1.75;overflow-wrap:anywhere}
#krepost-landing .kl-policy p,#krepost-landing .kl-policy ul,#krepost-landing .kl-policy ol{margin:0 0 18px}
#krepost-landing .kl-policy a{color:var(--kl-accent);text-decoration:underline;text-underline-offset:3px}
