.button{
  display:inline-flex;min-height:43px;align-items:center;justify-content:center;
  padding:10px 25px;border:0;border-radius:var(--radius);
  font-weight:700;font-size:15px;line-height:1;text-transform:uppercase;
  cursor:pointer;transition:background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast),filter var(--transition-fast)
}
.button--green{background:var(--color-lime);color:#fff;box-shadow:var(--shadow-soft)}
.button--block{width:100%}
.text-link{
  display:inline-flex;align-items:center;justify-content:center;
  font-weight:700;color:var(--color-lime);font-size:15px;
  text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;
  text-transform:uppercase;text-align:center;
  transition:color var(--transition-fast),text-decoration-thickness var(--transition-fast)
}
.download-button{
  display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:33px;
  padding:6px 12px;border-radius:var(--radius);background:var(--color-teal);color:#fff;
  font-size:13px;font-weight:500;cursor:pointer;
  transition:filter var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)
}
@media (hover:hover){
  .button--green:hover{background:var(--color-lime-hover);box-shadow:0 4px 16px rgba(0,49,40,.14);transform:translateY(-1px)}
  .text-link:hover{color:var(--color-primary);text-decoration-thickness:2px}
  .download-button:hover{filter:brightness(.94);box-shadow:0 4px 14px rgba(0,49,40,.16);transform:translateY(-1px)}
}
.button:active,.download-button:active{transform:translateY(0);filter:brightness(.92)}

/* Canonical light section-title modifier must survive Home's generic title rule. */
.section-title.section-title--light{color:#fff}

.panel-arrow{cursor:pointer;transition:filter var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}
@media (hover:hover){.panel-arrow:hover{filter:brightness(.96);box-shadow:0 3px 10px rgba(0,49,40,.12);transform:translateY(-1px)}}
.panel-arrow:active{transform:translateY(0);filter:brightness(.9)}
[data-section-title-reveal]{--section-title-reveal-duration:600ms;--section-title-reveal-steps:20;--section-title-reveal-clip-top:0;--section-title-reveal-clip-bottom:0}
[data-section-title-reveal="short"]{--section-title-reveal-duration:425ms;--section-title-reveal-steps:14}
[data-section-title-reveal="long"]{--section-title-reveal-duration:760ms;--section-title-reveal-steps:28}
[data-section-title-reveal="extra-long"]{--section-title-reveal-duration:850ms;--section-title-reveal-steps:32}
[data-section-title-reveal].is-section-title-reveal-ready{clip-path:inset(var(--section-title-reveal-clip-top) 100% var(--section-title-reveal-clip-bottom) 0)}
@media (prefers-reduced-motion:no-preference){[data-section-title-reveal].is-section-title-reveal-active{animation:sectionTitleClipReveal var(--section-title-reveal-duration) steps(var(--section-title-reveal-steps),end) both}}
@keyframes sectionTitleClipReveal{from{clip-path:inset(var(--section-title-reveal-clip-top) 100% var(--section-title-reveal-clip-bottom) 0)}to{clip-path:inset(var(--section-title-reveal-clip-top) 0 var(--section-title-reveal-clip-bottom) 0)}}

.certificate-lightbox{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:28px;background:rgba(10,35,38,.82)}
.certificate-lightbox[hidden]{display:none}
.certificate-lightbox__dialog{position:relative;display:inline-grid;grid-template-columns:auto auto auto;align-items:center;gap:16px;width:auto;max-width:calc(100vw - 56px);max-height:calc(100dvh - 56px);padding:20px 58px 20px 20px;border-radius:8px;background:rgba(12,54,59,.96);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.certificate-lightbox__figure{display:grid;grid-template-rows:minmax(0,1fr) auto;width:auto;max-height:calc(100dvh - 96px);margin:0}
.certificate-lightbox__figure img{display:block;max-width:min(760px,calc(100vw - 200px));max-height:calc(100dvh - 156px);margin:auto;object-fit:contain;border-radius:4px;background:#fff}
.certificate-lightbox:not(.has-multiple-images) .certificate-lightbox__dialog{display:inline-block;padding:20px}
.certificate-lightbox__figure figcaption{padding-top:12px;color:#fff;font-size:14px;line-height:1.35;text-align:center}
.certificate-lightbox__nav,.certificate-lightbox__close{display:grid;place-items:center;border:0;color:#fff;cursor:pointer}
.certificate-lightbox__nav{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.12)}
.certificate-lightbox__nav svg,.certificate-lightbox__close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
.certificate-lightbox__close{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:50%;background:transparent}
.certificate-lightbox__nav:hover,.certificate-lightbox__nav:focus-visible,.certificate-lightbox__close:hover,.certificate-lightbox__close:focus-visible{background:rgba(255,255,255,.22);outline:none}
.certificate-lightbox__zoom{position:absolute;z-index:1;top:12px;left:12px;display:flex;overflow:hidden;border:1px solid rgba(255,255,255,.25);border-radius:6px;background:rgba(12,54,59,.92)}
.certificate-lightbox__zoom-button,.certificate-lightbox__zoom-reset{display:grid;place-items:center;min-width:36px;height:36px;padding:0;border:0;border-right:1px solid rgba(255,255,255,.2);color:#fff;background:transparent;font:inherit;cursor:pointer}
.certificate-lightbox__zoom-reset{min-width:52px;font-size:12px}.certificate-lightbox__zoom-button:last-child{border-right:0;font-size:22px;line-height:1}
.certificate-lightbox__zoom-button:hover,.certificate-lightbox__zoom-button:focus-visible,.certificate-lightbox__zoom-reset:hover,.certificate-lightbox__zoom-reset:focus-visible{background:rgba(255,255,255,.18);outline:none}
.certificate-lightbox__zoom-button:disabled{opacity:.45;cursor:default}
.certificate-lightbox.has-image-zoom .certificate-lightbox__figure{overflow:auto;scrollbar-color:rgba(255,255,255,.55) transparent;scrollbar-width:thin}
.certificate-lightbox.has-image-zoom .certificate-lightbox__figure img{width:auto;height:calc((100dvh - 156px)*var(--certificate-lightbox-zoom,1));max-width:none;max-height:none}
body.is-certificate-lightbox-open{overflow:hidden}
@media (max-width:767px){.certificate-lightbox{padding:12px}.certificate-lightbox__dialog{grid-template-columns:minmax(0,1fr);width:100%;max-width:none;max-height:calc(100dvh - 24px);padding:16px 48px 16px 16px}.certificate-lightbox__figure,.certificate-lightbox__figure img{max-width:100%}.certificate-lightbox__nav{position:absolute;z-index:1;top:50%;width:36px;height:36px;transform:translateY(-50%)}.certificate-lightbox__nav--prev{left:10px}.certificate-lightbox__nav--next{right:10px}.certificate-lightbox__figure img{max-height:calc(100dvh - 122px)}.certificate-lightbox.has-image-zoom .certificate-lightbox__figure img{height:calc((100dvh - 122px)*var(--certificate-lightbox-zoom,1));max-width:none;max-height:none}.certificate-lightbox__figure figcaption{padding-top:8px;font-size:13px}.certificate-lightbox:not(.has-multiple-images) .certificate-lightbox__dialog{width:auto;padding:16px}}
