.certifications-page { --cert-navy:#071b3a; --cert-royal:#102b83; --cert-cyan:#36b7e8; --cert-lime:#d8f000; color:#122c45; background:white; font-family:var(--font-primary),Inter,sans-serif; }
.certifications-page * { box-sizing:border-box; letter-spacing:0; }
.certifications-page .folio { width:calc(100% - 36px); max-width:1280px; margin-inline:auto; }
.certifications-page h1,.certifications-page h2,.certifications-page h3 { color:inherit; margin:0 0 24px; font-family:var(--font-primary),Inter,sans-serif; font-weight:600; line-height:1.25; overflow-wrap:break-word; }
.certifications-page h1 { font-size:38px; font-weight:700; }
.certifications-page h2 { font-size:30px; }
.certifications-page h3 { font-size:23px; line-height:1.4; }
.certifications-page p { font-size:16px; line-height:1.8; font-weight:400; color:#526579; margin:0 0 24px; }
.certifications-page p:last-child { margin-bottom:0; }
.certifications-page section[id],.certifications-page [id] { scroll-margin-top:110px; }
.certifications-page .space { padding:52px 0; }
.certifications-page img { max-width:100%; display:block; }
.certifications-page figure { margin:0; }
.certifications-page .cert-eyebrow { color:var(--cert-cyan); display:block; text-transform:uppercase; font-size:12px; font-weight:600; margin-bottom:24px; }
.certifications-page .cert-hero { background-color:var(--cert-navy); background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px),linear-gradient(120deg,#071b3a,#102b83); background-size:48px 48px,48px 48px,100% 100%; color:white; padding:64px 0; overflow:hidden; }
.certifications-page .cert-hero > .folio { display:grid; gap:36px; align-items:center; }
.certifications-page .cert-hero h2 { font-size:14px; text-transform:uppercase; color:var(--cert-cyan); margin-bottom:18px; }
.certifications-page .cert-hero h3 { font-size:23px; }
.certifications-page .cert-hero p { color:#d4deef; }
.certifications-page .scroll-cue { display:inline-flex; width:44px; height:44px; border:1px solid #ffffff60; color:white; align-items:center; justify-content:center; text-decoration:none; margin-right:20px; }
.certifications-page .cert-primary-action { display:inline-flex; align-items:center; gap:24px; min-height:48px; padding:12px 22px; background:var(--cert-cyan); color:#071b3a; text-decoration:none; font-weight:600; border-radius:4px; }
.certifications-page a:focus-visible { outline:3px solid var(--cert-lime); outline-offset:5px; }
.certifications-page .cert-primary-action span { transition:transform 250ms; }
.certifications-page .cert-primary-action:hover span { transform:translateX(3px); }
.certifications-page .cert-hero-technical { position:relative; min-height:350px; width:100%; max-width:500px; justify-self:center; }
.certifications-page .hero-photo { position:absolute; inset:10% 0 10% 18%; overflow:hidden; clip-path:polygon(0 8%,88% 0,100% 85%,10% 100%); }
.certifications-page .hero-photo img { width:100%; height:100%; object-fit:cover; object-position:58% center; }
.certifications-page .cert-sheet { width:135px; height:174px; position:absolute; background:#f4f8fc; transform:rotate(-10deg) skewY(6deg); padding:22px; box-shadow:8px 14px 0 #36b7e830; }
.certifications-page .sheet-back { left:4%; top:8%; opacity:.75; transform:rotate(-19deg); }
.certifications-page .sheet-front { left:12%; bottom:5%; }
.certifications-page .cert-sheet span { display:block; width:28px; height:28px; border:2px solid #36b7e8; margin-bottom:16px; }
.certifications-page .cert-sheet i { display:block; height:2px; margin:12px 0; background:#b7cddb; }
.certifications-page .cert-sheet i:nth-child(3) { width:70%; }
.certifications-page .cert-sheet b { display:block; width:16px; height:16px; background:var(--cert-lime); position:absolute; bottom:22px; right:22px; }
.certifications-page .cert-measure { position:absolute; top:0; right:0; bottom:0; width:24px; border-block:1px solid var(--cert-cyan); border-right:1px solid var(--cert-cyan); }
.certifications-page .chapter { max-width:800px; margin-bottom:44px; }
.certifications-page .chapter h2::after { content:''; display:block; width:72px; height:2px; background:var(--cert-cyan); margin-top:24px; transform-origin:left; }
.certifications-page .service-sequence { list-style:none; padding:0 0 0 40px; margin:0; position:relative; display:grid; gap:40px; }
.certifications-page .service-sequence::before { content:''; position:absolute; left:13px; top:25px; bottom:25px; border-left:2px solid var(--cert-cyan); }
.certifications-page .cert-milestone { position:relative; min-width:0; }
.certifications-page .cert-node { position:absolute; left:-42px; top:2px; background:white; border:2px solid var(--cert-cyan); width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:11px; color:#122c45; }
.certifications-page .cert-platform { display:none; }
.certifications-page .cert-milestone h2 { font-size:23px; }
.certifications-page .cert-milestone h3 { margin-bottom:16px; }
.certifications-page .cert-reasons { color:white; background:linear-gradient(120deg,var(--cert-navy),#102b83); }
.certifications-page .cert-reasons p { color:#d4deef; }
.certifications-page .reason-sequence { position:relative; padding-left:62px; }
.certifications-page .reason-sequence::before { content:''; position:absolute; left:22px; top:24px; bottom:24px; width:1px; background:var(--cert-cyan); transform-origin:top; }
.certifications-page .reason-sequence > .numbered { position:relative; padding:8px 0 38px; }
.certifications-page .cert-workflow-node { position:absolute; top:0; left:-62px; width:44px; height:44px; border-radius:50%; background:var(--cert-lime); color:#071b3a; display:flex; align-items:center; justify-content:center; font-size:15px; font-weight:600; }
.certifications-page .reason-sequence h3 { font-size:23px; color:white; margin-bottom:16px; }
.certifications-page .cert-audience { background:#f3f6f9; }
.certifications-page .cert-audience > .folio { display:grid; gap:24px; }
.certifications-page .audience-list { list-style:none; padding:0; margin:0; border-top:1px solid #cfdde8; }
.certifications-page .audience-list li { font-size:26px; padding:22px 0; border-bottom:1px solid #cfdde8; display:flex; justify-content:space-between; }
.certifications-page .audience-list li::after { content:'\2197'; font-size:22px; color:#0074a1; }
.certifications-page .cert-fleet > .folio { display:grid; gap:36px; align-items:center; }
.certifications-page .fleet-photo { width:min(100%,440px); aspect-ratio:1; border-radius:50%; overflow:hidden; justify-self:center; }
.certifications-page .fleet-photo img { width:100%; height:100%; object-fit:cover; }
.certifications-page .cert-accreditations { background:#f3f6f9; }
.certifications-page .cert-accreditations > .folio { display:grid; gap:32px; }
.certifications-page .accreditation-ledger { list-style:none; padding:0; margin:0; counter-reset:cert-ledger; }
.certifications-page .accreditation-ledger li { position:relative; padding:24px 0 24px 52px; border-top:1px solid #cfdde8; font-size:19px; line-height:1.65; counter-increment:cert-ledger; }
.certifications-page .accreditation-ledger li::before { content:counter(cert-ledger,decimal-leading-zero); position:absolute; left:0; top:30px; color:#0074a1; font-size:12px; }
.certifications-page .cert-contact { background:var(--cert-navy); color:white; border-top:2px solid var(--cert-cyan); }
.certifications-page .cert-contact p { color:#d4deef; max-width:780px; }
.certifications-page .cert-contact a { display:inline-flex; background:var(--cert-cyan); color:#071b3a; min-height:44px; align-items:center; padding:6px 14px; text-decoration:none; font-weight:600; border-radius:4px; margin:4px 6px; }
.certifications-page .cert-revealed { animation:cert-unique-reveal 650ms ease both; }
.certifications-page .service-sequence li.cert-revealed:nth-child(2) { animation-delay:80ms; }
.certifications-page .service-sequence li.cert-revealed:nth-child(3) { animation-delay:160ms; }
.certifications-page .cert-revealed.reason-sequence::before { animation:cert-unique-route 900ms ease both; }
.certifications-page .cert-revealed.service-sequence::before { animation:cert-unique-route 900ms ease both; transform-origin:top; }
.certifications-page .cert-revealed.chapter h2::after { animation:cert-unique-line 750ms ease both; }
@keyframes cert-unique-reveal { from { opacity:.4; transform:translateY(16px); } to { opacity:1; transform:none; } }
@keyframes cert-unique-route { from { transform:scaleY(0); } to { transform:scaleY(1); } }
@keyframes cert-unique-line { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@media(min-width:768px) {
 .certifications-page .folio { width:calc(100% - 64px); }
 .certifications-page .space { padding:76px 0; }
 .certifications-page h1 { font-size:52px; }
 .certifications-page h2 { font-size:38px; }
 .certifications-page p { font-size:17px; }
 .certifications-page .cert-hero { padding:80px 0; }
 .certifications-page .cert-hero-technical { min-height:390px; }
 .certifications-page .service-sequence { grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; gap:28px; }
 .certifications-page .service-sequence::before { left:0; right:0; top:95px; bottom:auto; height:2px; border:0; background:var(--cert-cyan); }
 .certifications-page .cert-revealed.service-sequence::before { animation-name:cert-unique-line; transform-origin:left; }
 .certifications-page .cert-platform { display:flex; height:150px; position:relative; align-items:center; justify-content:center; margin-bottom:36px; }
 .certifications-page .cert-platform::before { content:''; position:absolute; inset:25px 10px; background:#fff; border:1px solid #c8dce8; transform:rotateX(55deg) rotateZ(-30deg); box-shadow:-8px 12px 0 #e5eef4,-15px 22px 18px #122c4510; }
 .certifications-page .cert-platform img { width:46px; height:46px; position:relative; z-index:1; filter:brightness(0) saturate(100%) invert(39%) sepia(85%) saturate(888%) hue-rotate(152deg); }
 .certifications-page .cert-node { left:12px; top:130px; width:36px; height:36px; font-size:12px; }
 .certifications-page .cert-milestone:nth-child(2) { padding-top:28px; }
 .certifications-page .cert-milestone:nth-child(2) .cert-node { top:158px; }
 .certifications-page .cert-milestone:nth-child(3) { padding-top:56px; }
 .certifications-page .cert-milestone:nth-child(3) .cert-node { top:186px; }
 .certifications-page .cert-milestone h3,.certifications-page .cert-milestone h2 { font-size:21px; }
 .certifications-page .cert-audience > .folio { grid-template-columns:1fr 1.4fr; gap:64px; }
 .certifications-page .cert-accreditations > .folio { grid-template-columns:1fr 1.5fr; gap:64px; }
}
@media(min-width:1024px) {
 .certifications-page h1 { font-size:58px; }
 .certifications-page h2 { font-size:42px; }
 .certifications-page .cert-hero > .folio { grid-template-columns:1.25fr 1fr; gap:56px; }
 .certifications-page .cert-hero-technical { min-height:430px; }
 .certifications-page .cert-sheet { width:155px; height:200px; }
 .certifications-page .reason-sequence { padding:0; display:grid; gap:32px; }
 .certifications-page .reason-sequence::before { left:50%; }
 .certifications-page .reason-sequence > .numbered { width:50%; padding:0 68px 40px 0; text-align:right; }
 .certifications-page .reason-sequence > .numbered:nth-child(even) { margin-left:50%; padding:0 0 40px 68px; text-align:left; }
 .certifications-page .cert-workflow-node { left:auto; right:-22px; }
 .certifications-page .reason-sequence > .numbered:nth-child(even) .cert-workflow-node { right:auto; left:-22px; }
 .certifications-page .reason-sequence > .numbered::after { content:''; position:absolute; right:22px; width:28px; top:22px; border-top:1px solid var(--cert-cyan); }
 .certifications-page .reason-sequence > .numbered:nth-child(even)::after { right:auto; left:22px; }
 .certifications-page .cert-fleet > .folio { grid-template-columns:1.2fr 1fr; gap:72px; }
 .certifications-page .cert-milestone h3,.certifications-page .cert-milestone h2 { font-size:24px; }
}
.certifications-page .cert-contact .folio{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center}
.certifications-page .cert-contact .cert-contact-copy{min-width:0}
.certifications-page .cert-contact .cert-contact-copy h2{margin-bottom:28px}
.certifications-page .cert-contact .folio>a{margin:0;padding:16px 28px;min-height:52px;background:#fff;color:#003d73;border-radius:6px;font-weight:500;white-space:nowrap;transition:background .25s ease,transform .25s ease}
.certifications-page .cert-contact .folio>a:hover{background:#eaf5fc;transform:translateY(-2px)}
@media(max-width:767px){.certifications-page .cert-contact .folio{grid-template-columns:1fr;gap:28px}.certifications-page .cert-contact .folio>a{justify-self:start}}
.certifications-page .cert-services .chapter,
.certifications-page .cert-reasons .chapter { margin-inline:auto; text-align:center; }
.certifications-page .cert-services .chapter h2::after,
.certifications-page .cert-reasons .chapter h2::after { margin-inline:auto; }
@media(prefers-reduced-motion:reduce) {
 .certifications-page * { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

.certifications-page .cert-hover-preview .cert-stage-preview {
 opacity:0;
 visibility:hidden;
 transition:opacity 220ms ease,visibility 220ms ease;
}
.certifications-page .cert-hover-preview .cert-preview-active .cert-stage-preview {
 opacity:1;
 visibility:visible;
}
.certifications-page .cert-hover-preview .cert-platform,
.certifications-page .cert-hover-preview .cert-node,
.certifications-page .cert-hover-preview :is(h2,h3) {
 transition:color 220ms ease,background-color 220ms ease,filter 220ms ease;
}
.certifications-page .cert-hover-preview .cert-preview-active :is(h2,h3) {color:#0078c8}
.certifications-page .cert-hover-preview .cert-preview-active .cert-platform {filter:drop-shadow(0 5px 8px rgba(0,120,200,.2))}
.certifications-page .cert-hover-preview .cert-preview-active .cert-node {background:#0078c8;color:#fff}
.certifications-page .cert-hover-preview .cert-milestone:focus-visible {outline:2px solid #0078c8;outline-offset:8px}
@media(prefers-reduced-motion:reduce){.certifications-page .cert-hover-preview *{transition:none!important}}
