.kp-certificates { position:relative; }
.kp-certificates__controls { display:flex; justify-content:flex-end; gap:.55rem; margin:0 0 1rem; }
.kp-certificates__arrow { width:42px; height:42px; border-radius:999px; border:1px solid rgba(36,69,66,.16); background:#fffdfc; color:#244542; cursor:pointer; transition:transform .18s ease,background .18s ease,opacity .18s ease; }
.kp-certificates__arrow:hover:not(:disabled) { transform:translateY(-2px); background:#E5ECE5; }
.kp-certificates__arrow:disabled { opacity:.35; cursor:default; }
.kp-certificates__viewport { overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scrollbar-width:none; padding:.4rem .1rem 1.2rem; }
.kp-certificates__viewport::-webkit-scrollbar { display:none; }
.kp-certificates__track { display:grid; grid-auto-flow:column; grid-auto-columns:minmax(280px,32%); gap:18px; width:max-content; min-width:100%; }
.kp-certificate-card { scroll-snap-align:start; background:#FFFDFC; border:1px solid rgba(36,69,66,.10); border-radius:22px; overflow:hidden; box-shadow:0 15px 44px rgba(36,69,66,.055); transition:transform .24s ease,box-shadow .24s ease; }
.kp-certificate-card:hover { transform:translateY(-4px); box-shadow:0 24px 58px rgba(36,69,66,.085); }
.kp-certificate-card__media { display:block; position:relative; width:100%; aspect-ratio:1.4/1; padding:0; border:0; background:#f4f0e9; cursor:zoom-in; overflow:hidden; }
.kp-certificate-card__media img { width:100%; height:100%; display:block; object-fit:contain; padding:1rem; transition:transform .35s ease; }
.kp-certificate-card:hover .kp-certificate-card__media img { transform:scale(1.025); }
.kp-certificate-card__zoom { position:absolute; right:12px; top:12px; width:34px; height:34px; border-radius:999px; display:grid; place-items:center; background:rgba(255,253,252,.92); color:#244542; box-shadow:0 8px 24px rgba(36,69,66,.08); }
.kp-certificate-card__body { display:grid; grid-template-columns:auto 1fr; gap:.35rem 1rem; padding:1rem 1.1rem 1.2rem; }
.kp-certificate-card__index { grid-row:1 / span 2; margin:0; font-family:var(--wp--preset--font-family--editorial); color:#97AAA2; font-size:1.35rem; }
.kp-certificate-card__body h3 { margin:0; font-size:1.08rem; line-height:1.25; }
.kp-certificate-card__meta { margin:0; color:#6F7E79; font-size:.78rem; }
.kp-certificates__progress { height:2px; background:rgba(36,69,66,.09); overflow:hidden; transform-origin:left; }
.kp-certificates__progress span { display:block; width:100%; height:100%; background:#244542; transform:scaleX(.14); transform-origin:left; transition:transform .12s linear; }
.kp-certificates-empty { border:1px dashed rgba(36,69,66,.2); background:#f5f3ef; border-radius:16px; padding:1rem 1.2rem; color:#50625b; }
.kp-certificate-lightbox[hidden] { display:none; }
.kp-certificate-lightbox { position:fixed; inset:0; z-index:99999; display:grid; place-items:center; padding:clamp(1rem,4vw,3rem); }
.kp-certificate-lightbox__backdrop { position:absolute; inset:0; background:rgba(11,47,44,.82); backdrop-filter:blur(8px); }
.kp-certificate-lightbox__dialog { position:relative; z-index:1; width:min(1100px,95vw); max-height:90vh; overflow:auto; background:#FFFDFC; border-radius:24px; padding:clamp(1rem,2vw,1.5rem); box-shadow:0 30px 100px rgba(0,0,0,.28); }
.kp-certificate-lightbox__dialog img { display:block; max-width:100%; max-height:76vh; margin:auto; object-fit:contain; }
.kp-certificate-lightbox__dialog p { margin:.8rem 0 0; text-align:center; font-family:var(--wp--preset--font-family--editorial); font-size:1.25rem; color:#244542; }
.kp-certificate-lightbox__close { position:sticky; z-index:2; top:.25rem; margin-left:auto; display:grid; place-items:center; width:42px; height:42px; border-radius:999px; border:1px solid rgba(36,69,66,.12); background:#FFFDFC; color:#244542; font-size:1.5rem; cursor:pointer; }
.kp-modal-open { overflow:hidden; }
@media (max-width:900px) { .kp-certificates__track { grid-auto-columns:minmax(270px,72%); } }
@media (max-width:600px) { .kp-certificates__track { grid-auto-columns:86%; } .kp-certificates__controls { justify-content:flex-start; } }
@media (prefers-reduced-motion:reduce) { .kp-certificate-card,.kp-certificate-card__media img,.kp-certificates__arrow { transition:none; } }
.kp-certificate-lightbox__description { max-width:720px; margin:.35rem auto 0; text-align:center; color:#6F7E79; font-size:.9rem; line-height:1.55; }

/* v10 — tactile document archive */
.kp-certificates {
  --kp-cert-ink:#173936;
  --kp-cert-line:rgba(23,57,54,.13);
  --kp-cert-paper:#fffdf9;
}
.kp-certificates__controls { align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1.25rem; }
.kp-certificates__archive-label { display:flex; align-items:center; gap:.55rem; margin:0; color:var(--kp-cert-ink); font-size:.8rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.kp-certificates__archive-label > span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:#e5ece5; font-size:1rem; }
.kp-certificates__archive-label small { color:#6f7e79; font-size:.7rem; font-weight:500; letter-spacing:.02em; }
.kp-certificates__arrows { display:flex; gap:.55rem; }
.kp-certificates__viewport { padding:.65rem .2rem 1.4rem; scroll-padding-inline:.2rem; }
.kp-certificates__track { grid-auto-columns:clamp(230px,27vw,330px); gap:clamp(14px,1.5vw,22px); align-items:stretch; }
.kp-certificate-card {
  position:relative; display:flex; flex-direction:column; min-width:0; border-color:var(--kp-cert-line); border-left:7px solid #78958b;
  border-radius:6px 20px 20px 6px; background:var(--kp-cert-paper); box-shadow:5px 12px 0 rgba(151,170,162,.12),0 18px 48px rgba(36,69,66,.07);
}
.kp-certificate-card:before { content:""; position:absolute; z-index:2; left:-7px; top:15%; bottom:15%; width:2px; background:rgba(255,255,255,.55); }
.kp-certificate-card:hover { transform:translateY(-5px); box-shadow:7px 15px 0 rgba(151,170,162,.15),0 26px 64px rgba(36,69,66,.11); }
.kp-certificate-card__media { aspect-ratio:1.38/1; margin:.65rem .65rem 0; width:calc(100% - 1.3rem); border-radius:14px; border:1px solid rgba(36,69,66,.08); background:linear-gradient(145deg,#f4f0e9,#ebe6dc); }
.kp-certificate-card__media:after { content:"Belgeyi aç"; position:absolute; inset:auto .7rem .7rem auto; padding:.4rem .6rem; border-radius:999px; background:rgba(11,47,44,.88); color:#fffdfc; font:600 .68rem/1 var(--wp--preset--font-family--sans); opacity:0; transform:translateY(4px); transition:opacity .2s ease,transform .2s ease; }
.kp-certificate-card__media:focus-visible:after,.kp-certificate-card:hover .kp-certificate-card__media:after { opacity:1; transform:none; }
.kp-certificate-card__media img { box-sizing:border-box; padding:clamp(.7rem,2vw,1.15rem); }
.kp-certificate-card__body { grid-template-columns:2.4rem minmax(0,1fr); flex:1; align-content:start; padding:1rem 1rem 1.2rem; }
.kp-certificate-card__index { grid-row:1 / span 3; padding-top:.1rem; font-size:1.55rem; line-height:1; }
.kp-certificate-card__type { margin:0 0 .25rem; color:#78958b; font-size:.64rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.kp-certificate-card__body h3 { overflow-wrap:anywhere; }
.kp-certificate-card__meta { grid-column:2; padding-top:.55rem; margin-top:auto; border-top:1px solid var(--kp-cert-line); }
.kp-certificates__progress { width:100%; max-width:420px; margin-top:.35rem; border-radius:999px; }

.kp-certificate-lightbox { animation:kp-certificate-fade .2s ease both; }
.kp-certificate-lightbox__backdrop { background:rgba(8,34,32,.88); }
.kp-certificate-lightbox__dialog { width:min(1180px,95vw); padding:0; overflow:hidden; border:1px solid rgba(255,255,255,.12); border-radius:26px; }
.kp-certificate-lightbox__close { position:absolute; right:1rem; top:1rem; margin:0; box-shadow:0 8px 24px rgba(11,47,44,.12); }
.kp-certificate-lightbox__reader { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,34%); min-height:min(760px,88vh); }
.kp-certificate-lightbox__document { display:grid; place-items:center; min-width:0; padding:clamp(1rem,3vw,2.4rem); background:linear-gradient(145deg,#e9e4da,#f5f1e9); }
.kp-certificate-lightbox__dialog .kp-certificate-lightbox__document img { max-width:100%; max-height:calc(88vh - 4rem); border-radius:4px; background:#fff; box-shadow:0 22px 60px rgba(11,47,44,.16); }
.kp-certificate-lightbox__info { display:flex; flex-direction:column; min-width:0; padding:clamp(2rem,4vw,3.5rem) clamp(1.4rem,3vw,2.5rem) 1.5rem; background:#fffdf9; }
.kp-certificate-lightbox__eyebrow { margin:0 0 1rem!important; color:#78958b!important; font-family:var(--wp--preset--font-family--sans)!important; font-size:.68rem!important; font-weight:700; letter-spacing:.11em; text-align:left!important; text-transform:uppercase; }
.kp-certificate-lightbox__dialog h2 { margin:0; color:#244542; font-family:var(--wp--preset--font-family--editorial); font-size:clamp(1.7rem,3vw,2.6rem); font-weight:400; line-height:1.08; overflow-wrap:anywhere; }
.kp-certificate-lightbox__meta { margin:1rem 0 0!important; padding-bottom:1rem; border-bottom:1px solid var(--kp-cert-line); color:#50625b!important; font-family:var(--wp--preset--font-family--sans)!important; font-size:.8rem!important; font-weight:600; text-align:left!important; }
.kp-certificate-lightbox__description { margin:1.25rem 0 0; text-align:left; }
.kp-certificate-lightbox__navigation { display:flex; justify-content:space-between; gap:.65rem; margin-top:auto; padding-top:1.5rem; }
.kp-certificate-lightbox__navigation button { min-height:42px; padding:.6rem .8rem; border:1px solid var(--kp-cert-line); border-radius:999px; background:#faf8f4; color:#244542; cursor:pointer; font:600 .75rem/1 var(--wp--preset--font-family--sans); }
.kp-certificate-lightbox__navigation button:hover { background:#e5ece5; border-color:rgba(36,69,66,.22); }
@keyframes kp-certificate-fade { from { opacity:0; } to { opacity:1; } }

@media (max-width:900px) {
  .kp-certificates__track { grid-auto-columns:minmax(240px,58%); }
  .kp-certificate-lightbox__reader { grid-template-columns:1fr; max-height:90vh; overflow:auto; }
  .kp-certificate-lightbox__document { min-height:50vh; }
  .kp-certificate-lightbox__dialog .kp-certificate-lightbox__document img { max-height:55vh; }
  .kp-certificate-lightbox__info { min-height:280px; }
}
@media (max-width:600px) {
  .kp-certificates__controls { align-items:flex-end; }
  .kp-certificates__track { grid-auto-columns:86%; gap:14px; }
  .kp-certificate-card { border-left-width:5px; box-shadow:3px 8px 0 rgba(151,170,162,.12),0 14px 38px rgba(36,69,66,.07); }
  .kp-certificate-card__media:after { opacity:1; transform:none; }
  .kp-certificate-lightbox { padding:.55rem; }
  .kp-certificate-lightbox__dialog { width:100%; max-height:96vh; border-radius:18px; }
  .kp-certificate-lightbox__reader { max-height:96vh; }
  .kp-certificate-lightbox__document { min-height:42vh; padding:2.8rem .8rem .8rem; }
  .kp-certificate-lightbox__info { padding:1.5rem 1.1rem 1rem; }
  .kp-certificate-lightbox__navigation { position:sticky; bottom:0; padding:.8rem 0 0; background:#fffdf9; }
}
@media (prefers-reduced-motion:reduce) { .kp-certificate-lightbox { animation:none; } .kp-certificate-card__media:after { transition:none; } }

/* v14 — image-led certificate showcase. */
.kp-certificate-showcase { position:relative; min-height:780px; overflow:hidden; }
.kp-certificate-showcase::before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(115deg,rgba(255,255,255,.36),transparent 55%); }
.kp-certificate-showcase > * { position:relative; z-index:1; }
.kp-certificate-showcase .kp-v9-cert-intro { gap:2rem; align-items:flex-end; }
.kp-certificate-showcase .kp-v9-cert-intro h2 { max-width:15ch; margin-top:.4rem; font-size:clamp(2.4rem,4.7vw,4.2rem)!important; line-height:1.02; }
.kp-certificate-showcase .kp-v9-cert-intro p:not(.kp-eyebrow):not(.kp-section-link) { max-width:690px; }
.kp-certificate-showcase .kp-v9-cert-shell { margin-top:clamp(2.5rem,5vw,4.5rem)!important; }
.kp-certificate-showcase .kp-certificates__controls { margin-bottom:1.1rem; }
.kp-certificate-showcase .kp-certificates__track { grid-auto-columns:clamp(330px,32vw,430px); gap:clamp(18px,2.3vw,30px); }
.kp-certificate-showcase .kp-certificate-card { min-height:520px; border-left-width:8px; box-shadow:7px 14px 0 rgba(120,149,139,.15),0 20px 56px rgba(23,57,54,.08); }
.kp-certificate-showcase .kp-certificate-card__media { aspect-ratio:auto; height:380px; margin:.8rem .8rem 0; width:calc(100% - 1.6rem); background:linear-gradient(145deg,#eeeae2,#fffdf9); }
.kp-certificate-showcase .kp-certificate-card__media img { padding:1.15rem; object-fit:contain; }
.kp-certificate-showcase .kp-certificate-card__body { padding:1.15rem 1.2rem 1.35rem; }
.kp-certificate-showcase .kp-certificates__progress { max-width:none; height:3px; }

.kp-certificates-page-archive .kp-certificates__track { grid-auto-columns:clamp(300px,30vw,400px); gap:clamp(18px,2vw,28px); }
.kp-certificates-page-archive .kp-certificate-card { min-height:490px; }
.kp-certificates-page-archive .kp-certificate-card__media { height:345px; aspect-ratio:auto; }

@media (max-width:900px) {
  .kp-certificate-showcase { min-height:700px; }
  .kp-certificate-showcase .kp-certificates__track,.kp-certificates-page-archive .kp-certificates__track { grid-auto-columns:minmax(300px,68%); }
  .kp-certificate-showcase .kp-certificate-card { min-height:490px; }
  .kp-certificate-showcase .kp-certificate-card__media { height:350px; }
}
@media (max-width:600px) {
  .kp-certificate-showcase { min-height:0; padding-inline:.75rem!important; }
  .kp-certificate-showcase .kp-v9-cert-intro { display:block; }
  .kp-certificate-showcase .kp-section-link { margin-top:1.25rem; }
  .kp-certificate-showcase .kp-certificates__track,.kp-certificates-page-archive .kp-certificates__track { grid-auto-columns:90%; }
  .kp-certificate-showcase .kp-certificate-card,.kp-certificates-page-archive .kp-certificate-card { min-height:440px; }
  .kp-certificate-showcase .kp-certificate-card__media,.kp-certificates-page-archive .kp-certificate-card__media { height:315px; }
}

/* v15 — full certificate page uses a complete card archive, not a carousel. */
.kp-certificates-page-archive .kp-certificates__controls { display:none; }
.kp-certificates-page-archive .kp-certificates__viewport {
  overflow:visible; padding:0; scroll-snap-type:none;
}
.kp-certificates-page-archive .kp-certificates__track {
  display:grid; grid-auto-flow:row; grid-auto-columns:auto; grid-template-columns:repeat(3,minmax(0,1fr));
  width:100%; min-width:0; gap:clamp(1.25rem,2.4vw,2rem); align-items:stretch;
}
.kp-certificates-page-archive .kp-certificate-card {
  width:100%; min-width:0; min-height:500px; scroll-snap-align:none;
}
.kp-certificates-page-archive .kp-certificate-card__media {
  height:auto; aspect-ratio:4/3; min-height:330px;
}
.kp-certificates-page-archive .kp-certificate-card__media img { padding:clamp(.85rem,1.7vw,1.3rem); }
.kp-certificates-page-archive .kp-certificate-card__body { min-height:145px; }
.kp-certificates-page-archive .kp-certificates__progress { display:none; }

@media (max-width:1000px) {
  .kp-certificates-page-archive .kp-certificates__track { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .kp-certificates-page-archive { padding-inline:1rem!important; }
  .kp-certificates-page-archive .kp-certificates__track { grid-template-columns:minmax(0,1fr); gap:1.1rem; }
  .kp-certificates-page-archive .kp-certificate-card { min-height:0; }
  .kp-certificates-page-archive .kp-certificate-card__media { min-height:0; aspect-ratio:4/3; }
  .kp-certificates-page-archive .kp-certificate-card__body { min-height:0; }
}

/* v19 — circular certificate portals with a pull-up document interaction. */
.kp-certificates {
  --kp-cert-circle:#dfe8df;
  --kp-cert-accent:#a86955;
}
.kp-certificates__archive-label > span { width:12px; height:12px; color:var(--kp-cert-accent); background:var(--kp-cert-accent); font-size:0; box-shadow:0 0 0 6px rgba(168,105,85,.11); }
.kp-certificates__viewport { padding:2.5rem .35rem 2rem; }
.kp-certificates__track { grid-auto-columns:clamp(260px,28vw,360px); gap:clamp(1.5rem,3.5vw,3.5rem); align-items:start; }
.kp-certificate-card,.kp-certificate-showcase .kp-certificate-card,.kp-certificates-page-archive .kp-certificate-card {
  display:flex; align-items:center; width:100%; min-width:0; min-height:0; padding:0; overflow:visible;
  border:0; border-radius:0; background:transparent; box-shadow:none;
}
.kp-certificate-card::before { display:none; }
.kp-certificate-card:hover { transform:none; box-shadow:none; }
.kp-certificate-card__media,.kp-certificate-showcase .kp-certificate-card__media,.kp-certificates-page-archive .kp-certificate-card__media {
  position:relative; isolation:isolate; flex:0 0 auto; width:min(100%,310px); height:auto; min-height:0; aspect-ratio:1/1; margin:0 auto;
  overflow:visible; border:1px solid rgba(22,74,70,.11); border-radius:50%; cursor:zoom-in;
  background:radial-gradient(circle at 48% 38%,#f8f5ee 0 42%,var(--kp-cert-circle) 43% 70%,#cedbd0 71% 100%);
  box-shadow:inset 0 -18px 35px rgba(22,74,70,.08),0 22px 52px rgba(22,74,70,.09);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease;
}
.kp-certificate-card__media::before { content:""; position:absolute; z-index:0; left:8%; right:8%; bottom:9%; height:25%; border-radius:50%; background:rgba(13,53,50,.16); filter:blur(16px); transform:scale(.76); transition:transform .35s ease,opacity .35s ease; }
.kp-certificate-card__media::after { content:"Belgeyi incele"; z-index:4; left:50%; right:auto; top:auto; bottom:1.15rem; padding:.55rem .8rem; border-radius:999px; opacity:0; color:#fff; background:rgba(13,53,50,.9); transform:translate(-50%,8px); white-space:nowrap; font:700 .68rem/1 var(--wp--preset--font-family--sans); transition:opacity .25s ease,transform .25s ease; }
.kp-certificate-card__media img,.kp-certificate-showcase .kp-certificate-card__media img,.kp-certificates-page-archive .kp-certificate-card__media img {
  position:absolute; z-index:2; left:14%; top:9%; display:block; width:72%; height:80%; min-height:0; padding:.35rem; object-fit:contain;
  border:1px solid rgba(22,74,70,.12); border-radius:4px; background:#fff; box-shadow:0 15px 35px rgba(13,53,50,.16);
  transform:translateY(0) rotate(-.6deg); transform-origin:center bottom;
  transition:transform .48s cubic-bezier(.18,.82,.22,1.2),box-shadow .35s ease;
}
.kp-certificate-card:nth-child(even) .kp-certificate-card__media img { transform:translateY(0) rotate(.6deg); }
.kp-certificate-card:hover .kp-certificate-card__media,.kp-certificate-card__media:focus-visible { transform:translateY(-4px); box-shadow:inset 0 -18px 35px rgba(22,74,70,.09),0 30px 70px rgba(22,74,70,.14); }
.kp-certificate-card:hover .kp-certificate-card__media img,.kp-certificate-card__media:focus-visible img { transform:translateY(-34px) scale(1.055) rotate(-1deg); box-shadow:0 26px 48px rgba(13,53,50,.22); }
.kp-certificate-card:hover .kp-certificate-card__media::before,.kp-certificate-card__media:focus-visible::before { transform:scale(1); opacity:.72; }
.kp-certificate-card:hover .kp-certificate-card__media::after,.kp-certificate-card__media:focus-visible::after { opacity:1; transform:translate(-50%,0); }
.kp-certificate-card__zoom { z-index:5; right:8%; top:8%; border:1px solid rgba(22,74,70,.12); background:#fffdf9; }
.kp-certificate-card__body,.kp-certificate-showcase .kp-certificate-card__body,.kp-certificates-page-archive .kp-certificate-card__body {
  display:block; width:min(100%,330px); min-height:0; padding:1.4rem .5rem 0; text-align:center;
}
.kp-certificate-card__index { display:none; }
.kp-certificate-card__type { margin:0 0 .4rem; color:#78958b; }
.kp-certificate-card__body h3 { margin:0; overflow-wrap:anywhere; font-size:clamp(1.15rem,1.6vw,1.38rem); line-height:1.2; }
.kp-certificate-card__meta { margin:.65rem 0 0; padding:.65rem 0 0; border-top:1px solid var(--kp-cert-line); color:#6f7e79; }
.kp-certificate-card__description { display:-webkit-box; margin:.7rem auto 0; overflow:hidden; color:#687772; font-size:.8rem; line-height:1.55; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.kp-certificate-card.is-pulling .kp-certificate-card__media img { opacity:0; }

.kp-certificates-page-archive .kp-certificates__viewport { padding-top:2rem; }
.kp-certificates-page-archive .kp-certificates__track { grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(2.5rem,5vw,5.5rem) clamp(1.5rem,3vw,3rem); }
.kp-certificate-showcase { min-height:0; }
.kp-certificate-showcase .kp-certificates__track { grid-auto-columns:clamp(280px,29vw,370px); }

/* Full-page reader and shared-element pull animation. */
.kp-certificate-lightbox { padding:clamp(.5rem,1.5vw,1.25rem); }
.kp-certificate-lightbox__backdrop { opacity:1; background:rgba(6,30,28,.91); transition:opacity .25s ease; }
.kp-certificate-lightbox__dialog { width:min(1500px,97vw); height:min(920px,95dvh); max-height:95dvh; border-radius:24px; background:#fffdf9; }
.kp-certificate-lightbox__reader { grid-template-columns:minmax(0,1fr) minmax(300px,30%); min-height:100%; height:100%; }
.kp-certificate-lightbox__document { min-height:0; background:radial-gradient(circle at center,#fffdf9 0 28%,#e9eee7 72%,#dbe5dc 100%); }
.kp-certificate-lightbox__dialog .kp-certificate-lightbox__document img { max-width:100%; max-height:calc(95dvh - 4rem); opacity:1; transition:opacity .16s ease; }
.kp-certificate-lightbox.is-preparing .kp-certificate-lightbox__backdrop { opacity:0; }
.kp-certificate-lightbox.is-preparing .kp-certificate-lightbox__dialog { opacity:0; }
.kp-certificate-lightbox.is-opening .kp-certificate-lightbox__dialog { animation:kp-cert-reader-in .55s cubic-bezier(.2,.75,.2,1) both; }
.kp-certificate-lightbox.is-opening .kp-certificate-lightbox__info { animation:kp-cert-info-in .55s .2s ease both; }
.kp-certificate-flight { position:fixed; z-index:100001; display:block; margin:0; padding:.35rem; object-fit:contain; border:1px solid rgba(22,74,70,.12); border-radius:4px; background:#fff; box-shadow:0 26px 70px rgba(0,0,0,.28); pointer-events:none; will-change:left,top,width,height,transform; }
@keyframes kp-cert-reader-in { from { opacity:0; transform:scale(.965); } to { opacity:1; transform:none; } }
@keyframes kp-cert-info-in { from { opacity:0; transform:translateX(18px); } to { opacity:1; transform:none; } }

@media (max-width:1000px) {
  .kp-certificates-page-archive .kp-certificates__track { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .kp-certificate-lightbox__reader { grid-template-columns:1fr; height:auto; max-height:95dvh; overflow:auto; }
  .kp-certificate-lightbox__document { min-height:60vh; }
  .kp-certificate-lightbox__dialog .kp-certificate-lightbox__document img { max-height:56vh; }
}
@media (max-width:640px) {
  .kp-certificates__viewport { padding-top:2rem; }
  .kp-certificates__track,.kp-certificate-showcase .kp-certificates__track { grid-auto-columns:88%; gap:1.25rem; }
  .kp-certificates-page-archive .kp-certificates__track { grid-template-columns:1fr; gap:3rem; }
  .kp-certificate-card__media,.kp-certificate-showcase .kp-certificate-card__media,.kp-certificates-page-archive .kp-certificate-card__media { width:min(86vw,310px); }
  .kp-certificate-card__media::after { opacity:1; transform:translate(-50%,0); }
  .kp-certificate-lightbox__dialog { width:100%; height:97dvh; max-height:97dvh; border-radius:16px; }
  .kp-certificate-lightbox__reader { max-height:97dvh; }
  .kp-certificate-lightbox__document { min-height:54vh; padding:3rem .75rem 1rem; }
  .kp-certificate-lightbox__dialog .kp-certificate-lightbox__document img { max-height:50vh; }
}
@media (prefers-reduced-motion:reduce) {
  .kp-certificate-card__media,.kp-certificate-card__media img,.kp-certificate-card__media::before,.kp-certificate-card__media::after { transition:none!important; }
  .kp-certificate-card:hover .kp-certificate-card__media,.kp-certificate-card:hover .kp-certificate-card__media img { transform:none!important; }
  .kp-certificate-lightbox.is-opening .kp-certificate-lightbox__dialog,.kp-certificate-lightbox.is-opening .kp-certificate-lightbox__info { animation:none; }
}
