/* BioSante Quality & Compliance page (v8) - scoped to .bs-q; tokens from home.css. Images: assets/quality/*.webp (cropped from the approved design) */
.bs-q{--qn:#022d5e;--qb:#0d5599;--qt:#38557c;--qg:#2e9b4b;--qm:#e1f3f0}.bs-q .bs-w{width:min(1180px,calc(100% - 2*clamp(18px,4vw,64px)))}
.bs-q svg{width:1em;height:1em}
.bs-q-eye{display:flex;align-items:center;gap:14px;font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--qb);margin-bottom:14px}.bs-q-eye:before{content:"";width:34px;height:2px;background:var(--qg)}
.bs-q h2{font-size:clamp(1.8rem,3vw,2.6rem);font-weight:800;color:var(--qb);margin:0 0 14px;line-height:1.15}.bs-q-lead{max-width:62ch;font-size:clamp(.95rem,1.1vw,1.05rem);line-height:1.75;color:var(--qb);margin:0 0 6px}
.bs-q-hero{position:relative;overflow:hidden;display:flex;align-items:center;min-height:clamp(300px,23vw,340px);background:linear-gradient(90deg,#f3f9fd,#e9f4fa)}
.bs-q-himg{position:absolute;inset:0 0 0 46%;background:url(../assets/quality/hero.webp) right center/cover no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent,#000 26%);mask-image:linear-gradient(90deg,transparent,#000 26%)}
.bs-q-hero .bs-w{position:relative;z-index:1}.bs-q-hin{max-width:520px;padding:clamp(36px,4.5vw,56px) 0}
.bs-q-hin h1{font-size:clamp(2.2rem,4.4vw,3.7rem);line-height:1.08;font-weight:800;color:var(--qn);margin:0 0 20px}.bs-q-hin h1 span{color:var(--qg)}.bs-q-hin p{font-size:clamp(.92rem,1.05vw,1.02rem);line-height:1.8;color:var(--qt);margin:0}
.bs-q-sec{padding:clamp(40px,4.8vw,64px) 0 clamp(44px,5.4vw,72px);background:#fff}
.bs-q-acts{list-style:none;padding:0;margin:clamp(24px,3vw,40px) 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.9vw,26px) clamp(16px,2.4vw,34px)}
.bs-q-acts li{display:flex;align-items:center;gap:clamp(14px,1.6vw,22px);padding:clamp(14px,1.5vw,20px) clamp(16px,1.8vw,24px);background:#fff;border-radius:10px;box-shadow:0 6px 26px rgba(13,85,153,.1);border:1px solid #eef4f9;transition:transform .3s,box-shadow .3s}.bs-q-acts li:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(13,85,153,.15)}
.bs-q-acts i{display:grid;place-items:center;flex:none;width:clamp(46px,4.2vw,58px);height:clamp(46px,4.2vw,58px);border-radius:50%;background:var(--qm);color:#0e7b6c;font-size:clamp(1.4rem,2vw,1.8rem)}.bs-q-acts li:nth-child(3n) i{background:#e1eefb;color:#0d62b4}
.bs-q-acts span{font-size:clamp(.8rem,.95vw,.9rem);font-weight:700;color:var(--qb);line-height:1.3}
.bs-q-cg{padding:clamp(44px,5vw,72px) 0;background:linear-gradient(180deg,#f2f9fc,#fff)}.bs-q-cgg{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,80px);align-items:center}
.bs-q-rule{display:flex;align-items:center;gap:6px;margin-top:26px}.bs-q-rule i{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e5f5ee;color:var(--qg);font-size:1.3rem}.bs-q-rule b{width:min(160px,40%);height:2px;background:linear-gradient(90deg,#4da4d8,rgba(77,164,216,.1))}
.bs-q-ph{position:relative;padding:0 clamp(18px,3vw,44px)}.bs-q-ph:before,.bs-q-ph:after{content:"";position:absolute;width:clamp(44px,6vw,86px);height:62%;top:14%;background:url(../assets/quality/leaf-deco.svg) no-repeat center/contain;opacity:.9}.bs-q-ph:before{left:0}.bs-q-ph:after{right:0;transform:scaleX(-1)}
.bs-q-ph img{position:relative;z-index:1;display:block;width:100%;height:auto;border-radius:26px;box-shadow:0 20px 46px rgba(13,85,153,.16)}
.bs-q-rg{padding:clamp(12px,2vw,28px) 0 clamp(44px,5.5vw,76px);background:#fff}
.bs-q-panel{position:relative;overflow:hidden;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:clamp(18px,3vw,44px);padding:clamp(26px,3.4vw,46px) clamp(22px,4.6vw,64px);margin-bottom:clamp(18px,2.4vw,34px);background:#eaf6f6;border-radius:14px}.bs-q-plain{background:transparent}
.bs-q-big{position:relative;display:grid;place-items:center;flex:none;width:clamp(86px,9vw,130px);height:clamp(86px,9vw,130px);border-radius:50%;background:#d9efee;color:#133b73;font-size:clamp(2.6rem,4.8vw,4.2rem)}.bs-q-plain .bs-q-big{background:#e3f1f2}
.bs-q-big em{position:absolute;right:2%;bottom:6%;display:grid;place-items:center;width:34%;height:34%;border-radius:50%;background:#fff;color:var(--qg);font-size:clamp(.9rem,1.7vw,1.5rem);box-shadow:0 3px 10px rgba(13,85,153,.18)}
.bs-q-vl{align-self:stretch;width:2px;min-height:90px;background:var(--qg);margin-block:6px}
.bs-q-panel h3{font-size:clamp(1.3rem,2.1vw,1.75rem);font-weight:800;color:var(--qb);margin:0 0 10px}.bs-q-panel p{margin:0;max-width:62ch;font-size:clamp(.88rem,1vw,1rem);line-height:1.85;color:var(--qb)}
.bs-q-deco{position:absolute;right:clamp(12px,3vw,48px);bottom:8%;width:clamp(60px,7vw,100px);height:clamp(70px,8vw,112px);background:url(../assets/quality/leaf-deco.svg) no-repeat center/contain;opacity:.75;pointer-events:none}
@media(max-width:980px){.bs-q-acts{grid-template-columns:1fr 1fr}.bs-q-cgg{grid-template-columns:1fr}.bs-q-ph{max-width:620px}}
@media(max-width:800px){.bs-q-himg{inset:0;-webkit-mask-image:none;mask-image:none;opacity:.22}.bs-q-panel{grid-template-columns:auto 1fr}.bs-q-vl{display:none}.bs-q-panel>div{grid-column:1/-1}.bs-q-deco{display:none}}
@media(max-width:520px){.bs-q-acts{grid-template-columns:1fr}.bs-q-ph{padding:0 14px}.bs-q-panel{padding:24px 20px}}
@media(prefers-reduced-motion:reduce){.bs-q-acts li{transition:none}}
.bs-q-hin{max-width:700px}.bs-q-hin p{max-width:500px}
@media(max-width:480px){.bs-q-hin h1{font-size:2.1rem}}
