/* Animated Counters */
.ac-wrap{max-width:1220px;margin:0 auto}
.ac-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:clamp(1.2rem,3vw,2.6rem);align-items:stretch}
.ac-photo{position:relative;margin:0;border-radius:18px;overflow:hidden;min-height:420px;background:var(--bg2);box-shadow:0 34px 70px -34px rgba(0,0,0,.9)}
.ac-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ac-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,20,40,.05) 30%,rgba(8,20,40,.88))}
.ac-photo-cap{position:absolute;z-index:1;left:clamp(1.2rem,2.5vw,2rem);right:1.2rem;bottom:clamp(1.2rem,2.5vw,2rem);color:#f7f4ee}
.ac-photo-cap p{margin:0;max-width:16rem;font-size:.9rem;color:rgba(243,233,220,.82)}
.ac-photo-cap .ac-hero-num{font-family:var(--serif);font-size:clamp(5rem,10vw,8.5rem);line-height:.85;color:var(--m-gold2);max-width:none;margin-bottom:.6rem}
.ac-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.8rem,1.6vw,1.4rem)}
.ac-stat{position:relative;padding:clamp(1.3rem,2.4vw,2.2rem);border-radius:16px;border:1px solid rgba(var(--ink-rgb),.12);background:linear-gradient(160deg,rgba(var(--ink-rgb),.05),rgba(var(--ink-rgb),.01));display:flex;flex-direction:column;justify-content:space-between;min-height:200px}
.ac-num{margin:0 0 .6rem;font-family:var(--serif);font-size:clamp(2.8rem,5vw,4.6rem);line-height:1;color:var(--cream);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}
.ac-label{margin:0 0 1.4rem;color:var(--muted);font-size:.92rem;line-height:1.5;max-width:18rem}
.ac-bar{display:block;height:2px;border-radius:2px;background:rgba(var(--ink-rgb),.12);overflow:hidden}
.ac-bar i{display:block;height:100%;width:calc(var(--to) * 100%);background:linear-gradient(90deg,var(--gold2),var(--gold));transform-origin:left;transform:scaleX(var(--p,1))}
.ac-rings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1rem,3vw,2.4rem);margin-top:clamp(2.4rem,5vw,4rem);padding-top:clamp(2rem,4vw,3rem);border-top:1px solid rgba(var(--ink-rgb),.1)}
.ac-ring{position:relative;margin:0;display:grid;justify-items:center;text-align:center}
.ac-ring svg{width:clamp(110px,13vw,150px);height:auto;transform:rotate(-90deg)}
.ac-ring circle{fill:none;stroke-width:5}
.ac-ring-bg{stroke:rgba(var(--ink-rgb),.1)}
.ac-ring-fg{stroke:var(--gold);stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--to) * var(--p,1))}
.ac-ring-num{position:absolute;top:0;width:clamp(110px,13vw,150px);aspect-ratio:1;display:grid;place-items:center;margin:0;font-family:var(--serif);font-size:clamp(1.7rem,2.6vw,2.3rem);color:var(--cream)}
.ac-ring figcaption{margin-top:1rem;max-width:15rem;color:var(--muted);font-size:.85rem;line-height:1.5}
.ac-actions{text-align:center;margin:clamp(2rem,4vw,3rem) 0 0}
.theme-light .ac-photo{box-shadow:0 34px 70px -40px rgba(var(--shadow-rgb),.5)}
.theme-light .ac-stat{background:#fff;box-shadow:0 20px 50px -36px rgba(var(--shadow-rgb),.35)}
@media (max-width:900px){.ac-layout{grid-template-columns:1fr}.ac-photo{min-height:340px}}
@media (max-width:520px){
  .ac-grid{gap:.7rem}
  .ac-stat{min-height:0;padding:1.1rem}
  .ac-num{font-size:2.2rem}
  .ac-label{font-size:.78rem;margin-bottom:1rem}
  .ac-rings{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
  .ac-ring svg,.ac-ring-num{width:96px}
  .ac-ring-num{font-size:1.35rem}
  .ac-ring figcaption{font-size:.7rem}
}
