/* The Certificate Room: a framed, responsive awards gallery. */
.certificate-page{background:#fbf7ed;color:#102b40}
.certificate-page .certificate-hero{background:linear-gradient(118deg,#0b2035 0%,#0d2e43 60%,#104457 100%);color:#fbf7ed;padding:clamp(3.8rem,7vw,6rem) 0}
.certificate-page .certificate-hero .eyebrow{color:#b9d3d2}
.certificate-page .certificate-hero .eyebrow-rule{background:#e9c674}
.certificate-page .certificate-hero h1,.certificate-page h2,.certificate-page h3{font-family:var(--sans);font-weight:700;letter-spacing:-.045em}
.certificate-page .certificate-hero h1{font-size:clamp(3rem,7vw,6rem);line-height:.96;color:#fffaf0;margin:.4rem 0 .7rem}
.certificate-page .certificate-subtitle{font-family:var(--serif);font-size:clamp(1.35rem,2.5vw,2rem);color:#e9c674;margin:0 0 .9rem}
.certificate-page .certificate-intro{max-width:650px;color:#dce7e3;font-size:1rem;line-height:1.75;margin:0}
.certificate-page .certificate-gallery{padding-block:clamp(3.2rem,6vw,5rem)}
.certificate-page .certificate-gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.8rem}
.certificate-page .certificate-gallery-heading h2{font-size:clamp(2rem,4vw,3.2rem);line-height:1.05;margin:0;color:#102b40}
.certificate-page .certificate-gallery-heading>p{max-width:300px;color:#53666b;font-size:.86rem;line-height:1.65;margin:0 0 .2rem}
.certificate-page .certificate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.3rem;align-items:start}
.certificate-page .certificate-card{min-width:0;padding:1.1rem;background:#f5f0e3;border:1px solid #d8cfbc;box-shadow:0 14px 32px rgba(16,43,64,.08)}
.certificate-page .certificate-card-heading{display:flex;justify-content:space-between;align-items:center;gap:.8rem;margin:0 0 .8rem}
.certificate-page .certificate-day{display:inline-flex;align-items:center;padding:.36rem .57rem;background:#0b2035;color:#fbf7ed;font:600 .62rem var(--mono);letter-spacing:.11em;text-transform:uppercase}
.certificate-page .certificate-card-heading time{color:#65706d;font:500 .61rem var(--mono);text-align:right}
.certificate-page .certificate-preview{width:100%;aspect-ratio:1.34;background:#fffdf7;border:1px solid #b99b60;box-shadow:inset 0 0 0 5px #f5f0e3,inset 0 0 0 6px #d7bf8b;position:relative;overflow:hidden}
.certificate-page .certificate-preview iframe{display:block;width:100%;height:100%;border:0;background:#fffdf7}
.certificate-page .certificate-preview-pending{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;padding:1.5rem;text-align:center;background:linear-gradient(145deg,#fffdf7,#e9f3ee)}
.certificate-page .preview-stamp{display:grid;place-items:center;width:62px;height:62px;border:1px solid #c9a65c;border-radius:50%;color:#0c8d83;font:700 .75rem var(--mono);letter-spacing:.1em;transform:rotate(-8deg)}
.certificate-page .certificate-preview-pending p{max-width:260px;margin:0;color:#294454;font-family:var(--serif);font-size:1.12rem;line-height:1.4}
.certificate-page .certificate-file-note{margin:.65rem 0 0;color:#80652f;font-size:.72rem;line-height:1.5}
.certificate-page .certificate-actions{display:flex;justify-content:space-between;gap:1rem;padding:.75rem .1rem .1rem}
.certificate-page .certificate-actions a{color:#087f79;font-size:.73rem;font-weight:700;text-decoration-color:#c9a65c;text-underline-offset:4px}
.certificate-page .certificate-actions a:hover{color:#0b2035}
.certificate-page .certificate-card-copy{padding:1rem .15rem .35rem}
.certificate-page .certificate-card-label{color:#087f79;font:600 .56rem var(--mono);letter-spacing:.13em;text-transform:uppercase;margin:0 0 .45rem}
.certificate-page .certificate-card h3{font-size:clamp(1.35rem,2.1vw,1.7rem);line-height:1.14;color:#102b40;margin:0 0 .55rem}
.certificate-page .certificate-card-copy>p:last-child{color:#526266;font-size:.82rem;line-height:1.65;margin:0}
.certificate-page .certificate-card-coming{background:#e8f1ec;border-style:dashed;box-shadow:none}
.certificate-page .certificate-card-coming .certificate-preview{border-style:dashed}
.certificate-page .certificate-loading,.certificate-page .certificate-empty,.certificate-page .certificate-noscript{grid-column:1/-1;color:#51636a;font-size:.9rem}
.certificate-page .certificate-note{background:#0b2035;color:#fbf7ed;padding:1.35rem 0}
.certificate-page .certificate-note-inner{display:flex;align-items:center;gap:1rem}
.certificate-page .certificate-note-mark{flex:0 0 38px;height:38px;display:grid;place-items:center;border:1px solid #16b7a5;border-radius:50%;color:#7ddbcf;font-family:var(--serif);font-weight:700}
.certificate-page .certificate-note-inner p{color:#dce7e3;font-size:.8rem;line-height:1.6;margin:0 auto 0 0}
.certificate-page .certificate-note-inner>a{flex:0 0 auto;color:#e9c674;font-size:.72rem;font-weight:650;text-decoration-color:#e9c674;text-underline-offset:4px}
.certificate-page .certificate-note-inner>a:hover{color:#fffaf0}
@media(max-width:800px){.certificate-page .certificate-grid{grid-template-columns:1fr;max-width:680px}.certificate-page .certificate-preview{aspect-ratio:1.45}.certificate-page .certificate-gallery-heading{align-items:flex-start}}
@media(max-width:700px){.certificate-page .section-wrap{width:calc(100vw - 2.2rem);max-width:var(--measure)}.certificate-page .certificate-grid{grid-template-columns:minmax(0,1fr);width:100%}.certificate-page .certificate-card{width:100%}.certificate-page .certificate-hero{padding:3.2rem 0 3.5rem}.certificate-page .certificate-hero h1{font-size:clamp(2.65rem,11vw,4rem)}.certificate-page .certificate-gallery-heading{display:block;margin-bottom:1.35rem}.certificate-page .certificate-gallery-heading h2{font-size:2.45rem}.certificate-page .certificate-gallery-heading>p{margin-top:.7rem}.certificate-page .certificate-card{padding:.8rem}.certificate-page .certificate-preview{aspect-ratio:1.08}.certificate-page .certificate-card-heading{align-items:flex-start;flex-direction:column;gap:.5rem}.certificate-page .certificate-card-heading time{text-align:left}.certificate-page .certificate-actions{flex-wrap:wrap}.certificate-page .certificate-note-inner{align-items:flex-start;flex-wrap:wrap}.certificate-page .certificate-note-inner>a{margin-left:3.1rem}}
.diary-certificate-room-link{margin:.2rem 0 1.4rem}

.certificate-page .certificate-card-draft{background:#e8f1ec;border-color:rgba(17,126,125,.45);border-style:dashed;box-shadow:none}.certificate-page .certificate-card-draft .certificate-card-label{color:#856319}.certificate-page .certificate-card-draft .preview-stamp{border-style:dashed;color:#856319}

/* Issued certificate PDFs are landscape; keep the clickable preview proportional on every screen. */
.certificate-page .certificate-preview.certificate-preview-issued{aspect-ratio:1.414}
.certificate-page .certificate-preview-issued iframe{pointer-events:none}.certificate-page .certificate-preview-issued img{display:block;width:100%;max-width:100%;height:100%;object-fit:contain}
.certificate-page .certificate-preview-issued .certificate-preview-open{position:absolute;inset:0;z-index:1;display:grid;place-items:center;color:transparent;background:transparent;text-align:center;text-decoration:none;font-size:.95rem;font-weight:700;transition:background-color .15s,color .15s}
.certificate-page .certificate-preview-issued .certificate-preview-open:hover,.certificate-page .certificate-preview-issued .certificate-preview-open:focus-visible{color:#fffaf0;background:rgba(11,32,53,.66);outline:3px solid #e9c674;outline-offset:-6px}
