/* Moskitiery 1.0.0 — nawigacja kotwic, grupy typów, karty produktów, paleta kolorów. Sekcje wspólne: ovi-kit.css + ovl.css. Ostre narożniki, Montserrat (motyw), waga 300. */
.ovi-moskitiery{--ms-ink:#161717;--ms-soft:#5a5a5a;--ms-line:#e6e6e6;color:var(--ms-ink);font-family:var(--ov-font,"Montserrat","Helvetica Neue",Arial,sans-serif);font-weight:300;background:#fff}
.ovi-moskitiery *{box-sizing:border-box}
.ovi-moskitiery section{scroll-margin-top:88px}
.ovi-moskitiery .ms-shell{width:min(1264px,calc(100% - 58px));margin-inline:auto}
.ovi-moskitiery a{text-decoration:none}
.ovi-moskitiery img{display:block;width:100%;height:100%;object-fit:cover}
.ovi-moskitiery :focus-visible{outline:3px solid #8a6a2b;outline-offset:3px}
/* nawigacja kotwic */
.ovi-moskitiery .ms-nav{position:sticky;top:var(--ov-header-h,78px);z-index:20;background:#fff;border-bottom:1px solid var(--ms-line)}
.ovi-moskitiery .ms-nav .ms-shell{display:flex;gap:28px;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch}
.ovi-moskitiery .ms-nav a{padding:16px 0;color:var(--ms-ink);font-size:.8125rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;border-bottom:2px solid transparent;transition:border-color .25s cubic-bezier(.65,0,.35,1)}
.ovi-moskitiery .ms-nav a:hover,.ovi-moskitiery .ms-nav a:focus-visible{border-bottom-color:var(--ms-ink)}
/* grupy typów */
.ovi-moskitiery .ms-group{margin-top:clamp(36px,5vw,64px);padding-top:clamp(36px,5vw,64px);border-top:1px solid var(--ms-line)}
.ovi-moskitiery .ms-group:first-of-type{margin-top:0;padding-top:0;border-top:0}
.ovi-moskitiery .ms-group__head{max-width:62ch;margin-bottom:24px}
.ovi-moskitiery .ms-group__head h3{margin:0 0 10px;font-size:clamp(1.375rem,2.2vw,1.875rem);font-weight:300;letter-spacing:-.02em}
.ovi-moskitiery .ms-group__head p{margin:0;color:var(--ms-soft);line-height:1.6}
.ovi-moskitiery .ms-group__list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:28px}
/* karta produktu */
.ovi-moskitiery .ms-product{display:flex;flex-direction:column;background:#fafafa;border:1px solid var(--ms-line);height:100%}
.ovi-moskitiery .ms-product__photo{display:block;aspect-ratio:4/3;overflow:hidden;background:#f0f0f0}
.ovi-moskitiery .ms-product__photo img{transition:transform .5s cubic-bezier(.65,0,.35,1)}
.ovi-moskitiery .ms-product__photo:hover img{transform:scale(1.04)}
.ovi-moskitiery .ms-product__noimg{display:block;width:100%;height:100%;background:linear-gradient(135deg,#eee,#f7f7f7)}
.ovi-moskitiery .ms-product__copy{display:flex;flex-direction:column;flex:1;padding:20px 22px 24px;gap:10px}
.ovi-moskitiery .ms-product__copy h4{margin:0;font-size:1.1875rem;font-weight:400;letter-spacing:-.015em}
.ovi-moskitiery .ms-product__copy h4 a{color:var(--ms-ink)}
.ovi-moskitiery .ms-product__copy p{margin:0;color:var(--ms-soft);line-height:1.55;font-size:.9375rem}
.ovi-moskitiery .ms-product__spec{padding-top:10px;border-top:1px solid var(--ms-line);font-weight:500;color:var(--ms-ink)!important}
.ovi-moskitiery .ms-product__actions{display:flex;flex-wrap:wrap;gap:10px 20px;align-items:center;margin-top:auto;padding-top:8px}
.ovi-moskitiery .ms-textlink{color:var(--ms-ink);font-size:.875rem;font-weight:500;border-bottom:1px solid currentColor;padding-bottom:2px}
/* kolory */
.ovi-moskitiery .ms-color-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,140px),1fr));gap:18px 20px;list-style:none;margin:28px 0 0;padding:0}
.ovi-moskitiery .ms-color-grid li{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;font-size:.8125rem;color:var(--ms-soft)}
.ovi-moskitiery .ms-swatch{display:block;width:56px;height:56px;border-radius:50%;border:1px solid rgba(0,0,0,.12);box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}
@media(max-width:860px){.ovi-moskitiery .ms-group__list{grid-template-columns:1fr}}
@media(max-width:560px){.ovi-moskitiery .ms-shell{width:calc(100% - 32px)}.ovi-moskitiery .ms-color-grid{grid-template-columns:repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){.ovi-moskitiery *{transition:none!important}}
