/* --- Break out of the theme's narrow classic-content column, only on
       pages that actually contain the certificates section. --- */
.entry-content:has(.dmnt-certs){ max-width:none !important; }
.section--tight:has(.dmnt-certs){ padding-block:clamp(1.25rem,3vw,2rem) !important; }
/* Remove the theme's duplicate page title on the certifications page
   (the section provides its own SEO H1). */
.section--tight:has(.dmnt-certs) .page-head{ display:none !important; }

/* Full-width section wrapper — transparent, so it inherits the exact same
   background as the surrounding sections (no flat black block). */
.dmnt-certs-section{ background: transparent; width:100%; }

/* DMNT Certifications — matches the dmnt theme design tokens (with fallbacks). */
.dmnt-certs{
	--_ink:      var(--ink, #f4f2fb);
	--_ink-soft: var(--ink-soft, #cdc7de);
	--_surface:  var(--surface, rgba(255,255,255,.04));
	--_line:     rgba(255,255,255,.10);
	--_grad:     linear-gradient(135deg,#4f7cff 0%,#8b5cf6 55%,#d946ef 100%);
	--_radius:   var(--radius, 16px);
	--_radius-lg:var(--radius-lg, 26px);
	--_shadow:   var(--shadow-sm, 0 14px 40px -20px rgba(0,0,0,.7));
	--dmnt-cert-cols: 3;
	font-family: var(--font-body, 'Inter', system-ui, sans-serif);
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	padding: clamp(1rem,4vw,2.5rem) 1rem;
	box-sizing: border-box;
}
.dmnt-certs *{ box-sizing:border-box; }

.dmnt-certs__head{ text-align:center; max-width:760px; margin:0 auto clamp(2rem,4vw,3rem); }
.dmnt-certs .dmnt-certs__eyebrow{
	display:inline-block; margin-bottom:1rem;
	font-family:var(--font-display,'Space Grotesk',sans-serif);
	font-size:.74rem; font-weight:600; letter-spacing:.22em; text-transform:uppercase;
	color:#c4b5fd;
	padding:.4rem .9rem; border-radius:999px;
	background:rgba(139,92,246,.12); border:1px solid rgba(139,92,246,.35);
}
.dmnt-certs .dmnt-certs__title{
	font-family: var(--font-display, 'Space Grotesk', system-ui, sans-serif);
	font-weight:700; font-size:clamp(1.9rem,4.4vw,3.2rem); line-height:1.1;
	color:var(--_ink); margin:0 0 .8rem; letter-spacing:-.01em;
}
.dmnt-certs .dmnt-certs__subtitle{ color:var(--_ink-soft); font-size:clamp(1rem,1.4vw,1.15rem); margin:0 auto; max-width:60ch; line-height:1.6; }
.dmnt-certs .dmnt-certs__intro{ color:var(--_ink-soft); font-size:1rem; line-height:1.7; margin-top:1rem; }
.dmnt-certs .dmnt-certs__intro p{ margin:0 0 .8rem; }
.dmnt-certs .dmnt-certs__intro strong{ color:var(--_ink); }

.dmnt-certs__grid{
	display:grid;
	grid-template-columns:repeat(var(--dmnt-cert-cols),minmax(0,1fr));
	gap:1.5rem;
	align-items:stretch;
}
@media(max-width:960px){ .dmnt-certs__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px){ .dmnt-certs__grid{ grid-template-columns:1fr; } }

.dmnt-certs .dmnt-cert{
	height:100%;
	display:flex; flex-direction:column;
	background:var(--_surface);
	border:1px solid var(--_line);
	border-radius:var(--_radius-lg);
	overflow:hidden;
	box-shadow:var(--_shadow);
	transition:transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s, border-color .3s;
}
.dmnt-certs .dmnt-cert:hover{
	transform:translateY(-6px);
	border-color:rgba(139,92,246,.5);
	box-shadow:0 30px 70px -30px rgba(124,58,237,.65);
}
.dmnt-certs .dmnt-cert.is-featured{ border-color:rgba(217,70,239,.5); }

/* Media area: full-bleed brand gradient by default (placeholder),
   switches to a clean white frame only when a real image is present. */
.dmnt-certs .dmnt-cert__media{
	position:relative;
	aspect-ratio:16/10;
	background:var(--_grad);
	display:flex; align-items:center; justify-content:center;
	overflow:hidden;
}
.dmnt-certs .dmnt-cert__media:has(img){ background:#fff; padding:14px; }
.dmnt-certs .dmnt-cert__img{
	display:block; width:100%; height:100%;
	object-fit:contain;
	border-radius:calc(var(--_radius) - 6px);
}

/* Placeholder (no image yet) — intentional, branded, not an empty box. */
.dmnt-certs .dmnt-cert__noimg{
	display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.5rem;
	width:100%; height:100%; padding:1rem; text-align:center; color:#fff;
}
.dmnt-certs .dmnt-cert__noimg::before{
	content:"🏆"; font-size:2rem; line-height:1; filter:drop-shadow(0 4px 10px rgba(0,0,0,.35));
}
.dmnt-certs .dmnt-cert__noimg span{
	font-family:var(--font-display,'Space Grotesk',sans-serif);
	font-weight:700; font-size:1.05rem; letter-spacing:.01em;
	text-shadow:0 2px 12px rgba(0,0,0,.28);
}
.dmnt-certs .dmnt-cert__noimg::after{
	content:"Sertifikatas"; font-size:.7rem; text-transform:uppercase; letter-spacing:.16em;
	opacity:.85; font-weight:600;
}

.dmnt-certs .dmnt-cert__verified{
	position:absolute; top:12px; right:12px; z-index:2;
	background:rgba(16,185,129,.96); color:#fff;
	font-size:.72rem; font-weight:700; letter-spacing:.02em;
	padding:.28rem .6rem; border-radius:999px;
	box-shadow:0 6px 16px -6px rgba(16,185,129,.8);
}

.dmnt-certs .dmnt-cert__body{ padding:1.35rem 1.4rem 1.45rem; display:flex; flex-direction:column; gap:.55rem; flex:1; }
.dmnt-certs .dmnt-cert__title{
	font-family:var(--font-display,'Space Grotesk',sans-serif);
	font-weight:600; font-size:1.1rem; line-height:1.3; color:var(--_ink) !important; margin:0;
}
.dmnt-certs .dmnt-cert__issuer{ color:var(--_ink-soft); font-size:.9rem; margin:0 0 .2rem; font-weight:500; }
.dmnt-certs .dmnt-cert__meta{ list-style:none; margin:.2rem 0 0; padding:0; display:flex; flex-direction:column; gap:.15rem; }
.dmnt-certs .dmnt-cert__meta li{
	display:flex; justify-content:space-between; align-items:baseline; gap:1rem;
	font-size:.85rem; border-top:1px solid var(--_line); padding:.4rem 0;
}
.dmnt-certs .dmnt-cert__meta li span{ color:var(--_ink-soft); white-space:nowrap; }
.dmnt-certs .dmnt-cert__meta li strong{ color:var(--_ink); font-weight:600; text-align:right; }

.dmnt-certs .dmnt-cert__verify{
	margin-top:1rem; align-self:flex-start;
	display:inline-flex; align-items:center; gap:.45rem;
	font-size:.86rem; font-weight:600; text-decoration:none !important; box-shadow:none;
	color:#fff !important; background:var(--_grad);
	padding:.62rem 1.1rem; border-radius:999px; border:0;
	transition:transform .2s, box-shadow .2s;
}
.dmnt-certs .dmnt-cert__verify:hover{ transform:translateY(-2px); box-shadow:0 12px 26px -10px rgba(124,58,237,.85); color:#fff !important; }
.dmnt-certs .dmnt-cert__verify span{ transition:transform .2s; }
.dmnt-certs .dmnt-cert__verify:hover span{ transform:translate(2px,-2px); }

/* ---------------------------- Mobile 100% ---------------------------- */
@media(max-width:600px){
	.dmnt-certs{ padding:1rem 1.25rem; }
	.dmnt-certs__grid{ gap:1.15rem; }
	.dmnt-certs .dmnt-cert__media{ aspect-ratio:16/9; }
	.dmnt-certs .dmnt-cert__body{ padding:1.15rem 1.15rem 1.25rem; }
	.dmnt-certs .dmnt-cert__verify{ width:100%; justify-content:center; margin-top:1.1rem; padding:.8rem 1rem; }
	.dmnt-certs .dmnt-cert__meta li{ font-size:.88rem; }
	.dmnt-certs__eyebrow{ font-size:.68rem; letter-spacing:.18em; }
}
/* Prevent long IDs/dates from overflowing on very small screens */
.dmnt-certs .dmnt-cert__meta li strong{ min-width:0; overflow-wrap:anywhere; }

/* ---------------------- Click-to-zoom media ---------------------- */
.dmnt-certs .dmnt-cert__media--zoom{ cursor:zoom-in; }
.dmnt-certs .dmnt-cert__zoom{
	position:absolute; bottom:10px; right:10px; z-index:2;
	width:34px; height:34px; border-radius:50%;
	display:flex; align-items:center; justify-content:center;
	color:#fff; background:rgba(15,17,25,.72); backdrop-filter:blur(4px);
	border:1px solid rgba(255,255,255,.18);
	opacity:0; transform:translateY(4px); transition:opacity .2s, transform .2s;
	pointer-events:none;
}
.dmnt-certs .dmnt-cert__media--zoom:hover .dmnt-cert__zoom,
.dmnt-certs .dmnt-cert__media--zoom:focus-visible .dmnt-cert__zoom{ opacity:1; transform:translateY(0); }
.dmnt-certs .dmnt-cert__media--zoom:focus-visible{ outline:2px solid #8b5cf6; outline-offset:2px; }

/* ---------------------------- Lightbox ---------------------------- */
.dmnt-lightbox{
	position:fixed; inset:0; z-index:100000;
	display:flex; align-items:center; justify-content:center;
	padding:clamp(1rem,4vw,3rem);
	opacity:0; transition:opacity .28s ease;
}
.dmnt-lightbox.is-open{ opacity:1; }
.dmnt-lightbox[hidden]{ display:none; }
.dmnt-lightbox__backdrop{ position:absolute; inset:0; background:rgba(5,3,8,.86); backdrop-filter:blur(6px); cursor:zoom-out; }
.dmnt-lightbox__inner{
	position:relative; z-index:1; max-width:min(1100px,95vw); max-height:90vh;
	display:flex; flex-direction:column; align-items:center; gap:.75rem;
	transform:scale(.96); transition:transform .28s cubic-bezier(.22,1,.36,1);
}
.dmnt-lightbox.is-open .dmnt-lightbox__inner{ transform:scale(1); }
.dmnt-lightbox__img{
	max-width:100%; max-height:82vh; width:auto; height:auto;
	border-radius:12px; background:#fff; box-shadow:0 40px 90px -20px rgba(0,0,0,.7);
	object-fit:contain;
}
.dmnt-lightbox__caption{
	color:#e9e6f5; font-family:'Inter',system-ui,sans-serif; font-size:.9rem; text-align:center;
	max-width:70ch;
}
.dmnt-lightbox__close{
	position:absolute; top:-14px; right:-14px; z-index:2;
	width:42px; height:42px; border-radius:50%; border:0; cursor:pointer;
	font-size:26px; line-height:1; color:#fff;
	background:linear-gradient(120deg,#4f7cff,#8b5cf6 55%,#d946ef);
	box-shadow:0 10px 26px -8px rgba(124,58,237,.9);
	display:flex; align-items:center; justify-content:center;
	transition:transform .2s;
}
.dmnt-lightbox__close:hover{ transform:scale(1.08); }
@media(max-width:600px){
	.dmnt-lightbox__close{ top:-8px; right:-8px; width:38px; height:38px; }
	.dmnt-lightbox__img{ max-height:74vh; }
}
body.dmnt-lightbox-open{ overflow:hidden; }

@media(prefers-reduced-motion:reduce){
	.dmnt-certs .dmnt-cert,.dmnt-certs .dmnt-cert__verify,.dmnt-certs .dmnt-cert__verify span{ transition:none; }
	.dmnt-lightbox,.dmnt-lightbox__inner,.dmnt-cert__zoom{ transition:none; }
}
