/* ────────────────────────────────────────────────────────────
   DMNT Custom Widgets — Armonta · Certificates section + PDF modal
   NEW FILE — additive only. Every selector is prefixed
   .acert- / .armonta-cert-, so no existing style is overridden.
   Brand values are declared locally on the widget's own wrapper,
   so this never leaks into :root or any other section.
   ──────────────────────────────────────────────────────────── */
.armonta-cert-scope{
  --acert-dark:#1a1e24;
  --acert-orange:#e8621a;
  --acert-orange-dk:#c04e10;
  --acert-max:1400px;
  --acert-pad:clamp(1.25rem, 5vw, 4rem);
}

/* ── Section ───────────────────────────────────────────────── */
.armonta-cert-scope .acert-section{
  position:relative;
  background:var(--acert-dark);
  color:#fff;
  overflow:hidden;
  padding:6rem 0;
  isolation:isolate;
}
.armonta-cert-scope .acert-bg-decor{position:absolute;inset:0;z-index:0;pointer-events:none;}
.armonta-cert-scope .acert-glow{
  position:absolute;top:-200px;left:-160px;width:560px;height:560px;
  background:radial-gradient(circle,rgba(232,98,26,.18) 0%,rgba(232,98,26,.04) 45%,transparent 70%);
  filter:blur(20px);
}
.armonta-cert-scope .acert-pattern{
  position:absolute;inset:0;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:24px 24px;
  opacity:.5;
  -webkit-mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent);
  mask-image:linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent);
}
.armonta-cert-scope .acert-inner{
  position:relative;z-index:1;
  max-width:var(--acert-max);
  margin:0 auto;
  padding:0 var(--acert-pad);
}

/* ── Heading block ─────────────────────────────────────────── */
.armonta-cert-scope .acert-head{max-width:640px;margin:0 0 3rem;}
.armonta-cert-scope .acert-eyebrow{display:flex;align-items:center;gap:.8rem;margin-bottom:1.2rem;}
.armonta-cert-scope .acert-eyebrow-line{width:28px;height:1px;background:var(--acert-orange);display:block;}
.armonta-cert-scope .acert-eyebrow span{
  font-family:'Poppins',sans-serif;font-size:.7rem;font-weight:600;
  letter-spacing:.2em;text-transform:uppercase;color:var(--acert-orange);
}
.armonta-cert-scope .acert-title{
  font-family:'Poppins',sans-serif;
  font-size:clamp(1.9rem,3.2vw,2.9rem);
  font-weight:700;letter-spacing:-.02em;line-height:1.15;
  color:#fff;margin:0 0 1.1rem;
}
.armonta-cert-scope .acert-title em{font-style:italic;color:var(--acert-orange);}
.armonta-cert-scope .acert-desc{
  font-family:'Poppins',sans-serif;
  color:rgba(200,208,220,.8);
  font-size:1.05rem;line-height:1.75;font-weight:300;
  margin:0;
}

/* ── Card ──────────────────────────────────────────────────── */
.armonta-cert-scope .acert-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,360px));
  gap:1.5rem;
}
.armonta-cert-scope .acert-card{
  position:relative;
  display:flex;flex-direction:column;align-items:flex-start;
  background:linear-gradient(180deg,rgba(255,255,255,.05) 0%,rgba(255,255,255,.015) 100%);
  border:1px solid rgba(255,255,255,.08);
  border-radius:3px;
  padding:2rem 1.8rem;
  transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.armonta-cert-scope .acert-card:hover{
  border-color:rgba(232,98,26,.45);
  transform:translateY(-4px);
  box-shadow:0 24px 50px -28px rgba(0,0,0,.7);
}
.armonta-cert-scope .acert-card-ico{
  display:flex;align-items:center;gap:.7rem;
  color:var(--acert-orange);
  margin-bottom:1.4rem;
}
.armonta-cert-scope .acert-card-ico svg{width:38px;height:38px;display:block;}
.armonta-cert-scope .acert-card-tag{
  font-family:'Poppins',sans-serif;font-size:.62rem;font-weight:600;
  letter-spacing:.18em;text-transform:uppercase;
  color:var(--acert-orange);
  border:1px solid rgba(232,98,26,.4);
  border-radius:2px;padding:.25rem .5rem;
}
.armonta-cert-scope .acert-card-title{
  font-family:'Poppins',sans-serif;
  font-size:1.15rem;font-weight:600;color:#fff;
  margin:0 0 .6rem;line-height:1.35;
}
.armonta-cert-scope .acert-card-desc{
  font-family:'Poppins',sans-serif;
  color:rgba(200,208,220,.72);
  font-size:.92rem;line-height:1.7;font-weight:300;
  margin:0 0 1.8rem;
}
.armonta-cert-scope .acert-btn{
  margin-top:auto;
  background:var(--acert-orange);color:#fff;
  padding:.9rem 2.2rem;border:none;border-radius:2px;cursor:pointer;
  font-family:'Poppins',sans-serif;font-size:.8rem;font-weight:600;
  letter-spacing:.12em;text-transform:uppercase;text-decoration:none;
  display:inline-flex;align-items:center;gap:.6rem;
  transition:background .2s,transform .2s;
}
.armonta-cert-scope .acert-btn:hover{background:var(--acert-orange-dk);transform:translateY(-2px);color:#fff;}

/* ── Entrance animation (class added by JS only, so no-JS stays visible) ── */
.armonta-cert-scope.acert-anim .acert-reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease;}
.armonta-cert-scope.acert-anim .acert-reveal.acert-visible{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .armonta-cert-scope.acert-anim .acert-reveal{opacity:1;transform:none;transition:none;}
  .armonta-cert-scope .acert-card:hover{transform:none;}
}

/* ── PDF modal ─────────────────────────────────────────────── */
.armonta-cert-modal{
  position:fixed;inset:0;z-index:99999;
  display:none;align-items:center;justify-content:center;
  padding:clamp(.75rem,3vw,2.5rem);
}
.armonta-cert-modal.open{display:flex;}
.armonta-cert-modal .acert-backdrop{
  position:absolute;inset:0;
  background:rgba(12,15,19,.82);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
}
.armonta-cert-modal .acert-dialog{
  position:relative;
  display:flex;flex-direction:column;
  width:min(1000px,100%);
  height:min(90vh,100%);
  background:#1a1e24;
  border:1px solid rgba(255,255,255,.1);
  border-radius:3px;
  box-shadow:0 40px 90px -30px rgba(0,0,0,.8);
  overflow:hidden;
}
.armonta-cert-modal .acert-head-bar{
  display:flex;align-items:center;gap:1rem;
  padding:1rem 1.25rem;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.armonta-cert-modal .acert-modal-title{
  font-family:'Poppins',sans-serif;
  font-size:.95rem;font-weight:600;color:#fff;
  margin:0;flex:1;min-width:0;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.armonta-cert-modal .acert-modal-actions{display:flex;align-items:center;gap:.6rem;flex-shrink:0;}
.armonta-cert-modal .acert-close{
  font-family:'Poppins',sans-serif;
  font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  display:inline-flex;align-items:center;gap:.5rem;
  padding:.6rem 1.1rem;border-radius:2px;
  text-decoration:none;cursor:pointer;
  transition:background .2s,border-color .2s,color .2s;
}
.armonta-cert-modal .acert-close{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.28);}
.armonta-cert-modal .acert-close:hover{border-color:#e8621a;color:#e8621a;}
.armonta-cert-modal .acert-close:focus-visible,
.armonta-cert-scope .acert-btn:focus-visible{outline:2px solid #e8621a;outline-offset:3px;}
.armonta-cert-modal .acert-body{flex:1;min-height:0;background:#20242c;}
.armonta-cert-modal .acert-body iframe{width:100%;height:100%;border:0;display:block;}
.armonta-cert-modal .acert-fallback{
  display:none;
  font-family:'Poppins',sans-serif;
  color:rgba(200,208,220,.8);font-size:.9rem;line-height:1.7;
  padding:2rem;text-align:center;margin:0;
}
body.armonta-cert-open{overflow:hidden;}

/* ── Responsive ────────────────────────────────────────────── */
@media(max-width:768px){
  .armonta-cert-scope .acert-section{padding:4rem 0;}
  .armonta-cert-scope .acert-head{margin-bottom:2.2rem;}
  .armonta-cert-scope .acert-grid{grid-template-columns:1fr;}
  .armonta-cert-modal .acert-dialog{height:100%;width:100%;}
  .armonta-cert-modal .acert-head-bar{flex-wrap:wrap;gap:.75rem;}
  .armonta-cert-modal .acert-modal-title{flex:1 0 100%;white-space:normal;}
  .armonta-cert-modal .acert-modal-actions{width:100%;}
  .armonta-cert-modal .acert-close{flex:1;justify-content:center;}
}
@media(max-width:560px){
  .armonta-cert-scope .acert-section{padding:3.5rem 0;}
  .armonta-cert-scope .acert-card{padding:1.6rem 1.35rem;}
}
