:root{--c-blue:#086ee5;--c-navy:#061b36;--c-text:#0a1d36;--c-muted:#62738a;--c-line:#dbe4ef;--c-pale:#f4f8fd}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.certifications-page{margin:0;background:#f8fafc;color:var(--c-text);font-family:"IBM Plex Sans",sans-serif;overflow-x:hidden}
.certifications-page main{overflow:visible}
.cert-hero{position:relative;min-height:820px;background:#edf4fb;isolation:isolate}
.cert-hero>img,.cert-hero-shade{position:absolute;inset:0;width:100%;height:100%}
.cert-hero>img{object-fit:cover;object-position:center}
.cert-hero-shade{z-index:1;background:linear-gradient(90deg,rgba(248,251,255,.98) 0%,rgba(248,251,255,.94) 38%,rgba(248,251,255,.2) 66%,rgba(248,251,255,0) 100%)}
.cert-hero-copy{position:relative;z-index:2;width:min(1500px,calc(100% - 9vw));margin:auto;padding:105px 0 190px}
.cert-eyebrow,.commitment-head>p,.documents-head>p,.laboratory-copy>p{margin:0 0 32px;color:var(--c-blue);font-size:14px;font-weight:600;letter-spacing:.14em}
.cert-hero h1{margin:0;max-width:720px;font-size:clamp(50px,4.4vw,76px);font-weight:400;letter-spacing:-.05em;line-height:1.07}
.cert-hero h1 em,.commitment-head h2 em,.documents-head h2 em,.laboratory-copy h2 em{color:#2875db;font-family:"Noto Serif Display",serif;font-weight:500}
.cert-rule,.commitment-head>i,.laboratory-copy>i{display:block;width:64px;height:3px;margin:38px 0;background:var(--c-blue)}
.cert-hero-copy>p:last-of-type{max-width:610px;margin:0;color:var(--c-muted);font-size:20px;line-height:1.7}
.cert-hero-values{display:grid;grid-template-columns:repeat(4,1fr);max-width:600px;margin-top:56px}
.cert-hero-values article{padding:0 22px;border-right:1px solid var(--c-line);text-align:center}
.cert-hero-values article:first-child{padding-left:0}
.cert-hero-values article:last-child{border:0}
.cert-hero-values span{display:block;color:var(--c-blue);font-size:32px}
.cert-hero-values b,.cert-hero-values small{display:block}
.cert-hero-values b{margin:14px 0 7px;font-size:15px}
.cert-hero-values small{color:var(--c-muted);font-size:13px;line-height:1.5}
.cert-hero-bar{position:absolute;z-index:3;left:4.5vw;right:4.5vw;bottom:-52px;display:grid;grid-template-columns:repeat(2,1fr);padding:28px 34px;border:1px solid rgba(210,222,236,.8);border-radius:16px;background:rgba(255,255,255,.94);box-shadow:0 22px 55px rgba(13,39,70,.1);backdrop-filter:blur(10px)}
.cert-hero-bar article{display:flex;align-items:center;gap:20px;padding:0 28px;border-right:1px solid var(--c-line)}
.cert-hero-bar article:last-child{border:0}
.cert-hero-bar article>span{display:grid;place-items:center;width:55px;height:55px;border-radius:50%;background:#edf4ff;color:var(--c-blue);font-size:22px;font-weight:600}
.cert-hero-bar b,.cert-hero-bar small{display:block}.cert-hero-bar b{font-size:16px}.cert-hero-bar small{margin-top:5px;color:var(--c-muted);font-size:13px}
.commitment-section{padding:145px max(5vw,30px) 90px;background:linear-gradient(145deg,#fff,#f5f9ff)}
.commitment-head,.documents-head{width:min(1060px,100%);margin:auto;text-align:center}
.commitment-head>p,.documents-head>p{margin-bottom:18px}
.commitment-head h2,.documents-head h2{margin:0;font-size:clamp(42px,4vw,64px);letter-spacing:-.045em;line-height:1.08}
.commitment-head>i{margin:22px auto}
.commitment-head>span,.documents-head>span{display:block;margin:auto;max-width:780px;color:var(--c-muted);font-size:17px;line-height:1.7}
.commitment-metrics{width:min(1450px,100%);margin:58px auto 0;display:grid;grid-template-columns:repeat(4,1fr);padding:30px;border:1px solid var(--c-line);border-radius:16px;background:#fff;box-shadow:0 20px 55px rgba(13,39,70,.06)}
.commitment-metrics article{display:grid;grid-template-columns:72px 1fr;gap:20px;padding:8px 30px;border-right:1px solid var(--c-line)}
.commitment-metrics article:last-child{border:0}
.commitment-metrics article>span{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#edf4ff;color:var(--c-blue);font-size:25px;font-weight:600}
.commitment-metrics strong,.commitment-metrics b{display:block}.commitment-metrics strong{color:var(--c-blue);font-size:34px;line-height:1}.commitment-metrics b{margin:9px 0 16px;font-size:15px}.commitment-metrics p{margin:0;color:var(--c-muted);font-size:14px;line-height:1.65}
.documents-section{padding:100px max(5vw,30px);background:#f1f6fc}
.documents-head h2{font-size:clamp(38px,3.5vw,56px)}
.documents-grid{width:min(1500px,100%);margin:48px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.official-documents-only{padding-top:180px;padding-bottom:130px}
.official-documents-only .documents-grid{width:min(900px,100%);grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.official-documents-only .document-image{height:500px;cursor:pointer}
.official-documents-only .document-card h3{font-size:22px}
.official-documents-only .document-card p{font-size:15px}
.document-card{overflow:hidden;border:1px solid var(--c-line);border-radius:14px;background:#fff;box-shadow:0 15px 38px rgba(12,38,68,.06);transition:transform .26s ease,box-shadow .26s ease}
.document-card:hover{transform:translateY(-5px);box-shadow:0 24px 55px rgba(12,38,68,.12)}
.document-image{display:block;width:100%;height:320px;padding:18px;border:0;background:#fbfcfe;cursor:zoom-in}
.document-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .28s ease}
.document-card:hover .document-image img{transform:scale(1.025)}
.document-card>div{padding:21px 20px 18px;border-top:1px solid var(--c-line)}
.document-card small{color:#54708e;font-size:11px;font-weight:600;letter-spacing:.1em}
.document-card h3{margin:8px 0 4px;font-size:18px}.document-card p{min-height:42px;margin:0;color:var(--c-muted);font-size:13px;line-height:1.55}
.document-card nav{display:grid;grid-template-columns:1fr 42px;gap:8px;margin-top:16px}
.document-card nav button,.document-card nav a{display:grid;place-items:center;height:40px;border:1px solid #74a9ef;border-radius:5px;background:#fff;color:#0969db;font:600 13px "IBM Plex Sans",sans-serif;text-decoration:none;cursor:pointer;transition:background .24s ease,color .24s ease}
.document-card nav button:hover,.document-card nav a:hover{background:var(--c-blue);color:#fff}
.documents-note{width:min(1450px,100%);margin:28px auto 0;color:#6b7d92;font-size:13px;line-height:1.6;text-align:center}
.laboratory-section{position:relative;min-height:850px;padding:105px max(5vw,30px) 230px;background:#fff;isolation:isolate}
.laboratory-section>img{position:absolute;z-index:-1;inset:0;width:100%;height:100%;object-fit:cover}
.laboratory-copy{width:min(680px,47vw)}
.laboratory-copy h2{margin:0;font-size:clamp(42px,3.8vw,62px);letter-spacing:-.045em;line-height:1.08}
.laboratory-copy>span{display:block;max-width:600px;color:var(--c-muted);font-size:17px;line-height:1.75}
.lab-principles{display:grid;grid-template-columns:repeat(4,1fr);margin-top:48px}
.lab-principles article{padding:0 24px;border-right:1px solid var(--c-line)}.lab-principles article:first-child{padding-left:0}.lab-principles article:last-child{border:0}
.lab-principles b,.lab-principles small{display:block}.lab-principles b{font-size:15px}.lab-principles small{margin-top:10px;color:var(--c-muted);font-size:13px;line-height:1.55}
.controls-panel{position:absolute;z-index:2;left:4.5vw;right:4.5vw;bottom:145px;padding:24px 34px;border:1px solid var(--c-line);border-radius:15px;background:rgba(255,255,255,.95);box-shadow:0 18px 45px rgba(12,38,68,.08);backdrop-filter:blur(9px)}
.controls-panel h3{margin:0 0 22px;color:var(--c-blue);font-size:20px;text-align:center}
.controls-panel>div{display:grid;grid-template-columns:repeat(5,1fr)}
.controls-panel article{padding:0 28px;border-right:1px solid var(--c-line)}.controls-panel article:last-child{border:0}
.controls-panel article>span{display:block;color:var(--c-blue);font-size:28px}.controls-panel b,.controls-panel small{display:block}.controls-panel b{margin:13px 0 8px;font-size:17px}.controls-panel small{color:var(--c-muted);font-size:13px;line-height:1.55}
.cert-cta{position:absolute;left:4.5vw;right:4.5vw;bottom:-78px;display:grid;grid-template-columns:auto 1.3fr 1px .8fr auto;align-items:center;gap:28px;padding:28px 36px;border-radius:15px;background:#042453;color:#fff;box-shadow:0 20px 50px rgba(4,30,65,.2)}
.cert-cta>span{display:grid;place-items:center;width:68px;height:68px;border:1px solid #4a8fdd;border-radius:50%;font-size:31px}.cert-cta>i{width:1px;height:64px;background:rgba(255,255,255,.2)}
.cert-cta h3{margin:0 0 7px;font-size:20px}.cert-cta p{margin:0;color:rgba(255,255,255,.68);font-size:14px;line-height:1.55}
.cert-cta>a{padding:16px 24px;border:1px solid #69a6ed;border-radius:5px;color:#fff;font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap}
.certifications-page .site-footer{margin-top:78px}
.cert-lightbox{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:34px;background:rgba(2,16,36,.94);opacity:0;visibility:hidden;transition:opacity .24s ease,visibility .24s ease}
.cert-lightbox.is-open{opacity:1;visibility:visible}.cert-lightbox>button{position:absolute;right:25px;top:18px;width:48px;height:48px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:transparent;color:#fff;font-size:31px;cursor:pointer}
.cert-lightbox figure{max-width:min(920px,92vw);max-height:90vh;margin:0;padding:15px;border-radius:10px;background:#fff}.cert-lightbox img{display:block;max-width:100%;max-height:80vh;object-fit:contain}.cert-lightbox figcaption{padding:11px 5px 0;color:#40556e;font-size:14px}.cert-modal-open{overflow:hidden}
@media(max-width:1150px){
  .cert-hero{min-height:900px}.cert-hero-copy{padding-top:85px}.cert-hero-values{grid-template-columns:1fr 1fr;gap:24px}.cert-hero-values article:nth-child(2){border:0}
  .cert-hero-bar{grid-template-columns:1fr 1fr;bottom:-95px;gap:22px}.cert-hero-bar article:nth-child(2){border:0}
  .commitment-section{padding-top:190px}.commitment-metrics{grid-template-columns:1fr 1fr;gap:25px}.commitment-metrics article:nth-child(2){border:0}
  .documents-grid{grid-template-columns:repeat(2,1fr)}.laboratory-copy{width:58vw}.controls-panel>div{grid-template-columns:repeat(3,1fr);row-gap:25px}.controls-panel article:nth-child(3){border:0}
  .cert-cta{grid-template-columns:auto 1fr auto}.cert-cta>i,.cert-cta>div:nth-of-type(2){display:none}
}
@media(min-width:1500px){.cert-hero-values{max-width:760px}}
@media(max-width:1400px){.cert-hero h1{max-width:620px}.cert-hero h1 em{display:block}}
@media(max-width:767px){
  .cert-hero{min-height:980px}.cert-hero>img{object-position:66% center}.cert-hero-shade{background:linear-gradient(180deg,rgba(248,251,255,.4),rgba(248,251,255,.97) 38%,#f8fbff 100%)}.cert-hero-copy{width:calc(100% - 40px);padding:390px 0 250px}.cert-eyebrow{font-size:11px}.cert-hero h1{font-size:40px}.cert-hero-copy>p:last-of-type{font-size:16px}.cert-rule{margin:25px 0}.cert-hero-values{margin-top:35px}.cert-hero-values article{padding:0 9px}.cert-hero-values span{font-size:25px}.cert-hero-values b{font-size:13px}.cert-hero-values small{display:none}
  .cert-hero-bar{left:20px;right:20px;bottom:-155px;grid-template-columns:1fr;padding:22px;gap:14px}.cert-hero-bar article{padding:0;border:0}.cert-hero-bar article>span{width:43px;height:43px;font-size:16px}.cert-hero-bar small{display:none}
  .commitment-section{padding:235px 20px 75px}.commitment-head h2,.documents-head h2,.laboratory-copy h2{font-size:39px}.commitment-head>span,.documents-head>span{font-size:15px}.commitment-metrics{grid-template-columns:1fr;padding:18px}.commitment-metrics article{padding:17px 8px;border-right:0;border-bottom:1px solid var(--c-line)}.commitment-metrics article:last-child{border:0}
  .documents-section{padding:75px 20px}.official-documents-only{padding-top:235px;padding-bottom:90px}.documents-grid,.official-documents-only .documents-grid{grid-template-columns:1fr}.document-image,.official-documents-only .document-image{height:420px}
  .laboratory-section{min-height:1380px;padding:430px 20px 430px}.laboratory-section>img{object-position:68% top}.laboratory-copy{width:100%}.lab-principles{grid-template-columns:1fr 1fr;gap:22px}.lab-principles article{padding:0 12px;border:0}.lab-principles article:nth-child(even){border-left:1px solid var(--c-line)}
  .controls-panel{left:20px;right:20px;bottom:205px;padding:22px}.controls-panel>div{grid-template-columns:1fr 1fr}.controls-panel article{padding:13px;border:0}.controls-panel article:nth-child(even){border-left:1px solid var(--c-line)}
  .cert-cta{left:20px;right:20px;bottom:-105px;grid-template-columns:1fr;padding:25px}.cert-cta>span{display:none}.cert-cta>a{text-align:center}.certifications-page .site-footer{margin-top:105px}.cert-lightbox{padding:15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
