/* ==========================================================================
   AXIMO — services.php only.
   Extends assets/css/aximo.css. Nothing here overrides the design system,
   it only adds the few compositions this page needs.
   ========================================================================== */

/* ---------- shared vertical rhythm ---------- */
.crumbs+.eyebrow{margin-top:1.4rem}
.eyebrow+.display{margin-top:1.2rem}

/* ---------- page header: capability figures ---------- */
.phead__aside{display:grid;gap:1rem;align-content:end}
.phead__facts{display:grid;grid-template-columns:repeat(2,1fr);gap:1.4rem 1rem;margin-top:1.15rem}
.phead__facts li{display:grid;gap:.2rem}
.phead__facts b{
  font-family:"Fraunces",Georgia,serif;font-weight:400;line-height:1;
  font-size:clamp(1.7rem,3vw,2.35rem);
  background:var(--gold-grad);-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.phead__facts span{
  font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--text-faint);line-height:1.45;
}

/* ---------- division index (inside the page header) ---------- */
.index-head{
  display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;
  gap:.6rem 1.5rem;margin:clamp(2.4rem,5vw,3.4rem) 0 1.1rem;
}
.index-head p{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint)}
.index{display:grid;gap:.9rem;grid-template-columns:1fr;margin-top:1.1rem}
@media(min-width:620px){.index{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1040px){.index{grid-template-columns:repeat(4,1fr)}}
.index li{display:grid}
.index a{display:grid;height:100%}
.index .shell{height:100%;transition:border-color .5s var(--ease),background .5s var(--ease)}
.index .core{
  height:100%;display:grid;gap:.4rem;align-content:start;
  padding:1.25rem 1.3rem 1.4rem;
  transition:transform .6s var(--ease);
}
.index__name{
  font-family:"Fraunces",Georgia,serif;font-size:1.2rem;line-height:1.15;
  letter-spacing:-.015em;transition:color .4s var(--ease);
}
.index__count{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;color:var(--text-faint)}
.index a:hover .shell{border-color:rgba(227,187,94,.45);background:var(--surface-2)}
.index a:hover .index__name{color:var(--gold)}

/* ---------- a single division ---------- */
.svc__copy{display:grid;gap:1.05rem;align-content:start}
.svc__kicker{
  font-family:"Fraunces",Georgia,serif;font-style:italic;font-weight:300;
  font-size:var(--step-1);line-height:1.25;letter-spacing:-.02em;color:var(--gold);
}
.svc__meta{
  display:flex;align-items:center;gap:.7rem;font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--text-faint);
}
.svc__meta::before{content:"";flex:0 0 auto;width:1.7rem;height:1px;background:var(--hair)}
.svc__chips li a{display:block;margin:-.35rem -.7rem;padding:.35rem .7rem;border-radius:99px}
.svc__actions{display:flex;flex-wrap:wrap;align-items:center;gap:1rem .9rem;margin-top:.35rem}
/* the frame follows the photograph's own proportions (set inline, per image) */
.svc__media .core{aspect-ratio:var(--media-ar,5/4)}
.svc__media figcaption{
  margin-top:.9rem;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;
  color:var(--text-faint);
}

/* ---------- FAQ column ---------- */
.faq-aside{display:grid;gap:1.3rem;align-content:start}
@media(min-width:1060px){.faq-aside{position:sticky;top:7rem}}
.faq-card .core{display:grid;gap:.85rem}
.faq-card p.dim{font-size:var(--step--1)}
.faq-card ul{display:grid;gap:.45rem;margin-top:.2rem}
.faq-card li{display:flex;justify-content:space-between;gap:1rem;font-size:.78rem;color:var(--text-dim)}
.faq-card li span:last-child{color:var(--text);white-space:nowrap}
.acc__q>span{flex:1 1 auto}
