/* Locked Voices v0.2 layout; scoped to this Joomla module. */
.adamas-voices {
  --av-bg:#fff;--av-mid:#f1f4ed;--av-ink:#20291e;--av-copy:#4d5748;
  --av-accent:#53663c;--av-line:rgba(32,41,30,.14);--av-wash:rgba(83,102,60,.075);
  --av-type-title:var(--adamas-type-title,clamp(32px,4vw,52px));
  --av-type-body:var(--adamas-type-body,15px);--av-type-label:var(--adamas-type-label,11px);
  --av-type-caption:var(--adamas-type-caption,12px);
  width:100%;padding-block:clamp(48px,6vw,88px);color:var(--av-ink);color-scheme:light;
  background:linear-gradient(90deg,var(--av-bg),var(--av-mid) 54%,var(--av-bg));
  font-size:var(--av-type-body);font-weight:400;line-height:1.85;border:0;box-shadow:none;
}
.adamas-voices[data-theme="dark"] {
  --av-bg:#151b15;--av-mid:#232d22;--av-ink:#f4f1e6;--av-copy:#c4cabc;
  --av-accent:#c4d4a3;--av-line:rgba(244,241,230,.15);--av-wash:rgba(196,212,163,.075);
  color-scheme:dark;
}
/* A separate surface in the same palette grounds the Speak Up cutout above. */
.adamas-voices[data-surface="tonal"] {--av-bg:#edf1e7;--av-mid:#e2e9d9;}
.adamas-voices[data-theme="dark"][data-surface="tonal"] {--av-bg:#10170f;--av-mid:#182313;}
.adamas-voices,.adamas-voices *,.adamas-voices *::before,.adamas-voices *::after {
  box-sizing:border-box;font-family:"Sora",Arial,sans-serif!important;
}
.adamas-voices [hidden] {display:none!important;}
.adamas-voices :is(h2,p,figure,blockquote) {margin:0;padding:0;}
.adamas-voices .av-inner {position:relative;isolation:isolate;max-width:var(--av-content-width,1440px);margin-inline:auto;padding-inline:clamp(24px,5vw,80px);}
/* Keep the decorative layer inside the content wrapper so the Speak Up seam stays intact. */
.adamas-voices .av-watermark {
  position:absolute;inset:0 clamp(24px,5vw,80px);z-index:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.08em;
  font-size:clamp(24px,calc(var(--av-watermark-scale,16)*1vw),260px);font-weight:700;
  line-height:1.02;letter-spacing:-.055em;text-align:center;color:var(--av-accent);
  opacity:var(--av-watermark-light-opacity,.06);overflow:hidden;pointer-events:none;user-select:none;
}
.adamas-voices .av-watermark span {display:block;flex-shrink:0;white-space:nowrap;font-weight:inherit;}
.adamas-voices[data-theme="dark"] .av-watermark {opacity:var(--av-watermark-dark-opacity,.05);}
.adamas-voices :is(.av-header,.av-grid) {position:relative;z-index:1;}
@supports(font-size:1cqi) {
  .adamas-voices .av-inner {container-type:inline-size;}
  .adamas-voices .av-watermark {font-size:clamp(24px,calc(var(--av-watermark-scale,16)*1cqi),260px);}
}
.adamas-voices .av-header {display:flex;align-items:flex-start;justify-content:space-between;gap:32px;margin-bottom:clamp(36px,4vw,56px);}
.adamas-voices .av-eyebrow {display:flex;align-items:center;gap:12px;color:var(--av-accent);font-size:var(--av-type-label);font-weight:600;line-height:1.6;letter-spacing:.14em;text-transform:uppercase;margin-bottom:18px!important;}
.adamas-voices .av-eyebrow::before {content:"";width:30px;height:2px;background:currentColor;flex-shrink:0;}
.adamas-voices .av-title {font-size:var(--av-type-title)!important;font-weight:500;line-height:1.15;letter-spacing:-.04em;color:var(--av-ink);}
.adamas-voices .av-title span {font-weight:inherit;}
.adamas-voices .av-title-lead {color:var(--av-ink);}
.adamas-voices .av-title-accent {color:var(--av-accent);}
.adamas-voices .av-intro {color:var(--av-copy);max-width:54ch;margin-top:18px!important;font-size:var(--av-type-body)!important;font-weight:400;line-height:1.85;}
.adamas-voices .av-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(24px,2.6vw,38px);align-items:stretch;}
.adamas-voices .av-card {display:flex;flex-direction:column;row-gap:22px;min-width:0;background:transparent;border:0;box-shadow:none;}
.adamas-voices .av-credit {display:flex;flex-direction:column;align-items:center;text-align:center;}
.adamas-voices .av-avatar {position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;width:var(--av-portrait-size,84px);height:var(--av-portrait-size,84px);aspect-ratio:1;border-radius:50%;background:var(--av-wash);color:var(--av-accent);border:1px solid var(--av-line);overflow:hidden;margin-bottom:20px;}
.adamas-voices .av-initials {font-size:25px;font-weight:500;line-height:1;letter-spacing:-.03em;}
.adamas-voices .av-photo {position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;border:0;box-shadow:none;filter:none;}
.adamas-voices .av-credit-name {display:block;min-height:0;font-size:16px;font-weight:500;font-style:normal;line-height:1.5;color:var(--av-ink);overflow-wrap:anywhere;}
.adamas-voices .av-credit-role {display:block;min-height:3.4em;margin-top:4px;color:var(--av-copy);font-size:var(--av-type-caption);font-weight:400;line-height:1.7;overflow-wrap:anywhere;}
.adamas-voices .av-statement {margin-top:0!important;border:0;background:transparent;box-shadow:none;font-style:normal;}
.adamas-voices .av-quote-icon {display:block;width:36px;height:36px;max-width:none;margin:0 0 12px;padding:0;border:0;background:none;box-shadow:none;fill:none;stroke:var(--av-accent);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;}
.adamas-voices .av-quote {font-size:var(--av-type-body)!important;font-weight:400;font-style:normal;line-height:1.85;letter-spacing:normal;color:var(--av-ink);overflow-wrap:anywhere;}
@supports(grid-template-rows:subgrid) {
  .adamas-voices .av-card {display:grid;grid-template-rows:subgrid;grid-row:span 2;row-gap:22px;}
}
@media(max-width:1023px) {
  .adamas-voices .av-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 32px;}
}
@media(max-width:680px) {
  .adamas-voices {
    --av-type-body:var(--adamas-type-body,14px);--av-type-label:var(--adamas-type-label,10px);
    --av-type-caption:var(--adamas-type-caption,11px);
  }
}
@media(max-width:639px) {
  .adamas-voices {padding-block:36px;}
  .adamas-voices .av-header {gap:16px;margin-bottom:34px;}
  .adamas-voices .av-title {--av-type-title:var(--adamas-type-title,32px);}
  .adamas-voices .av-intro {margin-top:16px!important;}
  .adamas-voices .av-grid {grid-template-columns:minmax(0,1fr);gap:36px;}
  .adamas-voices .av-card+.av-card {border-top:1px solid var(--av-line);padding-top:36px;}
  .adamas-voices .av-card {row-gap:20px;}
  .adamas-voices .av-avatar {width:var(--av-portrait-mobile,76px);height:var(--av-portrait-mobile,76px);margin-bottom:16px;}
  .adamas-voices .av-credit-name,.adamas-voices .av-credit-role {min-height:0;}
  .adamas-voices .av-statement {margin-top:0!important;}
  .adamas-voices .av-quote-icon {width:32px;height:32px;margin-bottom:10px;}
}
