.certificates-page {
    --cert-gold: #b58b32;
    --cert-ink: #181712;
    --cert-muted: #68635a;
    --cert-line: rgba(181, 139, 50, .24);
    background: #f7f4ec;
    color: var(--cert-ink);
    overflow: clip;
}

.certificates-hero {
    position: relative;
    padding: clamp(7.5rem, 13vw, 11rem) 0 clamp(4rem, 8vw, 7rem);
    background:
        radial-gradient(circle at 15% 25%, rgba(194, 154, 61, .2), transparent 32rem),
        linear-gradient(140deg, #0b0b09 0%, #19170f 52%, #090908 100%);
    color: #fff;
}

.certificates-hero::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .16;
    background-image: linear-gradient(rgba(255,255,255,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: linear-gradient(to bottom, #000, transparent 90%);
}

.certificates-hero .fargah-container { position: relative; z-index: 1; }
.certificates-breadcrumb { display: flex; gap: .65rem; align-items: center; margin-bottom: 2rem; color: rgba(255,255,255,.62); font-size: .86rem; }
.certificates-breadcrumb a { color: #d8b766; text-decoration: none; }
.certificates-hero__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(20rem, .75fr); gap: clamp(2rem, 6vw, 6rem); align-items: end; }
.certificates-eyebrow { margin: 0 0 .8rem; color: var(--cert-gold); font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.certificates-hero h1 { max-width: none; margin: 0; color: #fff !important; font-size: clamp(2.15rem, 3.6vw, 4.2rem); line-height: 1.08; letter-spacing: -.035em; white-space: nowrap; }
.certificates-lead { max-width: 66rem; margin: 1.5rem 0 0; color: rgba(255,255,255,.75); font-size: clamp(1rem, 1.5vw, 1.2rem); line-height: 2; }
.certificates-summary { display: grid; grid-template-columns: auto 1fr; gap: 1.2rem; padding: 1.65rem; border: 1px solid rgba(207,171,83,.45); border-radius: 1.4rem; background: rgba(255,255,255,.055); box-shadow: 0 24px 70px rgba(0,0,0,.24); backdrop-filter: blur(12px); }
.certificates-summary > span { display: grid; place-items: center; width: 3.2rem; height: 3.2rem; border: 1px solid rgba(207,171,83,.65); border-radius: 50%; color: #dfbd6c; font-size: .8rem; }
.certificates-summary h2 { margin: 0 0 .7rem; color: #fff !important; font-size: 1.15rem; }
.certificates-summary p { margin: 0; color: rgba(255,255,255,.7); line-height: 1.9; font-size: .92rem; }

.certificates-section { padding: clamp(4rem, 8vw, 7rem) 0; }
.certificates-heading { max-width: 52rem; margin-bottom: 2.2rem; }
.certificates-heading h2, .certificates-technical h2 { margin: 0; font-size: clamp(1.9rem, 3.6vw, 3.2rem); line-height: 1.24; }
.certificates-heading > p:last-child, .certificates-technical p { margin: 1rem 0 0; color: var(--cert-muted); line-height: 1.95; }
.certificates-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.6rem; }
.certificate-card { min-width: 0; overflow: hidden; border: 1px solid var(--cert-line); border-radius: 1.5rem; background: rgba(255,255,255,.94); box-shadow: 0 24px 70px rgba(50,39,16,.09); }
.certificate-card__media { display: grid; height: clamp(22rem, 43vw, 37rem); padding: 1rem; gap: .65rem; background: linear-gradient(145deg, #171611, #262115); }
.certificate-card__media--single { grid-template-columns: 1fr; }
.certificate-card__media--pair { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.certificate-card__image { position: relative; min-width: 0; overflow: hidden; padding: 0; border: 0; border-radius: .9rem; background: #111; cursor: zoom-in; }
.certificate-card__image img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .45s ease, filter .45s ease; }
.certificate-card__image span { position: absolute; inset-inline: .8rem; bottom: .8rem; padding: .65rem .8rem; border: 1px solid rgba(255,255,255,.22); border-radius: .65rem; color: #fff; background: rgba(0,0,0,.72); opacity: 0; transform: translateY(.5rem); transition: .25s ease; backdrop-filter: blur(8px); }
.certificate-card__image:hover img, .certificate-card__image:focus-visible img { transform: scale(1.025); filter: brightness(.78); }
.certificate-card__image:hover span, .certificate-card__image:focus-visible span { opacity: 1; transform: none; }
.certificate-card__body { padding: clamp(1.35rem, 3vw, 2.2rem); }
.certificate-card__status { display: inline-flex; align-items: center; gap: .5rem; margin-bottom: 1rem; padding: .45rem .7rem; border-radius: 999px; color: #755020; background: #f5ead0; font-size: .76rem; font-weight: 750; line-height: 1.45; }
.certificate-card--documented .certificate-card__status { color: #24533c; background: #e4f1e9; }
.certificate-card--personal .certificate-card__status { color: #3d446b; background: #e9eaf6; }
.certificate-card h3 { margin: 0 0 1.35rem; font-size: clamp(1.25rem, 2vw, 1.65rem); }
html[data-theme="light"] .certificate-card h3 { color: #0a0a08 !important; }
.certificate-card dl { display: grid; gap: 1rem; margin: 0; }
.certificate-card dl > div { display: grid; grid-template-columns: minmax(7rem, .34fr) minmax(0, 1fr); gap: 1rem; padding-bottom: 1rem; border-bottom: 1px solid rgba(100,82,45,.12); }
.certificate-card dt { color: #8a6d2c; font-size: .78rem; font-weight: 800; }
.certificate-card dd { margin: 0; color: #403d36; font-size: .9rem; line-height: 1.75; overflow-wrap: anywhere; }
.certificate-card__note { margin: 1.1rem 0 0; padding: .8rem 1rem; border-inline-start: 2px solid #c89f44; color: #6a6255; background: #faf7f0; font-size: .82rem; line-height: 1.75; }
.certificate-card__issuer { display: inline-flex; margin-top: 1rem; color: #85631d; font-size: .82rem; font-weight: 750; text-decoration: none; }
.certificate-card__issuer:hover { text-decoration: underline; }

.certificates-technical { padding: clamp(3rem, 6vw, 5.5rem) 0; color: #fff; background: #11100d; }
.certificates-technical__panel { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2rem; align-items: end; }
.certificates-technical h2 { color: #fff !important; }
.certificates-technical p { max-width: 56rem; color: rgba(255,255,255,.68); }
.certificates-technical a { display: inline-flex; align-items: center; min-height: 3.2rem; padding: .75rem 1.2rem; border: 1px solid #c39a3d; border-radius: 999px; color: #e5c473; text-decoration: none; white-space: nowrap; }
.certificates-section--faq { background: #eee9de; }
.certificates-faq { display: grid; gap: .75rem; max-width: 62rem; }
.certificates-faq details { border: 1px solid rgba(121,90,25,.16); border-radius: .9rem; background: rgba(255,255,255,.72); }
.certificates-faq summary { padding: 1.1rem 1.25rem; cursor: pointer; font-weight: 760; }
.certificates-faq p { margin: 0; padding: 0 1.25rem 1.25rem; color: var(--cert-muted); line-height: 1.9; }

.certificate-dialog { width: min(94vw, 68rem); height: min(94vh, 58rem); padding: 0; border: 1px solid rgba(214,176,83,.5); border-radius: 1.1rem; background: #111; color: #fff; box-shadow: 0 30px 100px rgba(0,0,0,.6); }
.certificate-dialog::backdrop { background: rgba(0,0,0,.82); backdrop-filter: blur(6px); }
.certificate-dialog figure { display: grid; grid-template-rows: minmax(0, 1fr) auto; width: 100%; height: 100%; margin: 0; padding: 1rem; }
.certificate-dialog img { width: 100%; height: 100%; object-fit: contain; min-height: 0; }
.certificate-dialog figcaption { padding: .75rem .5rem .15rem; color: rgba(255,255,255,.72); text-align: center; }
.certificate-dialog__close { position: absolute; z-index: 2; inset-block-start: .75rem; inset-inline-end: .75rem; display: grid; place-items: center; width: 2.6rem; height: 2.6rem; border: 1px solid rgba(255,255,255,.35); border-radius: 50%; color: #fff; background: rgba(0,0,0,.78); font-size: 1.5rem; cursor: pointer; }

@media (min-width: 901px) and (max-width: 1199px) {
    .certificates-hero h1 { font-size: clamp(1.8rem, 3vw, 2.45rem); }
}

@media (max-width: 900px) {
    .certificates-hero__grid, .certificates-grid, .certificates-technical__panel { grid-template-columns: 1fr; }
    .certificates-hero h1 { white-space: normal; }
    .certificates-summary { max-width: 38rem; }
    .certificate-card__media { height: 34rem; }
    .certificates-technical a { justify-self: start; }
}

@media (max-width: 600px) {
    .certificates-hero { padding-top: 6.5rem; }
    .certificates-hero h1 { font-size: clamp(2.1rem, 12vw, 3.3rem); }
    .certificates-summary { grid-template-columns: 1fr; }
    .certificate-card__media { height: 29rem; padding: .65rem; }
    .certificate-card__media--pair { height: 25rem; }
    .certificate-card dl > div { grid-template-columns: 1fr; gap: .35rem; }
    .certificate-card__image span { opacity: 1; transform: none; font-size: .72rem; }
    .certificate-dialog { width: 96vw; height: 92vh; }
}

@media (prefers-reduced-motion: reduce) {
    .certificate-card__image img, .certificate-card__image span { transition: none; }
}
