/* Team, certificates, lightbox, gallery "show more", nav fit */
.team{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.2rem}
.member{text-align:center}
.member img,.av-lg{width:100%;aspect-ratio:1/1;border-radius:var(--r);object-fit:cover;object-position:center 15%;box-shadow:0 10px 28px rgba(31,52,105,.16);transition:transform .35s,box-shadow .35s}
.member:hover img,.member:hover .av-lg{transform:translateY(-6px);box-shadow:0 18px 38px rgba(31,52,105,.25)}
.av-lg{display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#2c4a94);color:var(--yellow);font-family:Anton;font-size:4.2rem}
.member h3{margin:.9rem 0 0;font-size:1.25rem}
.member .role{margin:.15rem 0 0;color:var(--mut);font-size:.85rem;font-weight:500}

/* client review cards: horizontal strip */
.rv-wrap{position:relative}
.rv{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:.4rem .2rem 1.4rem;scrollbar-width:thin;align-items:flex-start}
.rv-card{flex:0 0 min(300px,78%);scroll-snap-align:start;padding:0;border:0;background:#fff;border-radius:18px;overflow:hidden;cursor:zoom-in;box-shadow:0 8px 26px rgba(31,52,105,.16);transition:transform .3s,box-shadow .3s;display:block}
.rv-card img{width:100%;height:auto;display:block}
.rv-card:hover,.rv-card:focus-visible{transform:translateY(-6px);box-shadow:0 18px 38px rgba(31,52,105,.28);outline:none}
.rv-card:focus-visible{outline:3px solid var(--navy);outline-offset:2px}
.rv-wrap .car-btn{top:40%}
@media (max-width:760px){.rv-wrap .car-btn{display:none}}

.logos{list-style:none;margin:0 0 2.4rem;padding:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.4rem 2.4rem}
.logos li{background:#fff;border-radius:14px;padding:.8rem 1.2rem;box-shadow:0 4px 16px rgba(31,52,105,.08);display:grid;place-items:center}
.logos img{height:58px;width:auto;max-width:150px;object-fit:contain;filter:grayscale(.55);opacity:.9;transition:filter .3s,opacity .3s}
.logos li:hover img{filter:none;opacity:1}

.certs{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.9rem}
.cert{padding:0;border:0;background:#fff;border-radius:12px;overflow:hidden;cursor:zoom-in;box-shadow:0 4px 16px rgba(31,52,105,.12);transition:transform .3s,box-shadow .3s;aspect-ratio:4/3;display:block}
.cert img{width:100%;height:100%;object-fit:cover;object-position:top center}
.cert:hover,.cert:focus-visible{transform:translateY(-5px) scale(1.02);box-shadow:0 14px 30px rgba(31,52,105,.28);outline:none}
.cert:focus-visible{outline:3px solid var(--navy);outline-offset:2px}

.lightbox{position:fixed;inset:0;z-index:100;background:rgba(10,18,40,.92);display:flex;align-items:center;justify-content:center;padding:3.5rem 4.5rem}
.lightbox[hidden]{display:none}
.lightbox img{max-width:100%;max-height:100%;border-radius:8px;background:#fff;box-shadow:0 20px 60px rgba(0,0,0,.5)}
.lb-close,.lb-nav{position:absolute;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;width:46px;height:46px;font-size:1.6rem;line-height:1;transition:background .2s}
.lb-close:hover,.lb-nav:hover{background:var(--yellow);color:var(--navy)}
.lb-close{top:14px;right:14px}
.lb-nav{top:50%;margin-top:-23px}
.lb-prev{left:14px}.lb-next{right:14px}
body.lb-open{overflow:hidden}

.ba .cap{position:absolute;top:8px;left:50%;transform:translateX(-50%);padding:.2rem .7rem;background:rgba(20,34,74,.85);color:#fff;font-size:.72rem;font-weight:600;border-radius:999px;white-space:nowrap;pointer-events:none}

.gallery.collapsed > :nth-child(n+9){display:none}
.more-wrap{text-align:center;margin-top:1.6rem}

/* 7 nav links: keep them on one line between phone and desktop widths */
@media (min-width:761px) and (max-width:1100px){
  nav{gap:1rem}
  nav a:not(.btn){font-size:.82rem}
  .nav-cta{padding:.5rem .9rem}
}
@media (max-width:760px){
  .member h3{font-size:1.05rem}
  .av-lg{font-size:3rem}
  .logos{gap:.8rem 1rem}.logos img{height:44px}
  .lightbox{padding:3.5rem .6rem}
  .lb-nav{top:auto;bottom:14px;margin:0}
  .lb-prev{left:calc(50% - 56px)}.lb-next{right:calc(50% - 56px)}
}

/* Results: 8 before/after sliders in two rows of four */
.gallery{columns:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.gallery > img{width:100%;aspect-ratio:3/4;object-fit:cover;margin:0;border-radius:14px}
.gallery .ba{margin:0;aspect-ratio:3/4!important}
.gallery .ba img{object-fit:cover;object-position:50% 0%}
@media (max-width:899px){.gallery{grid-template-columns:repeat(2,1fr);gap:.8rem}}

/* WhatsApp buttons */
.btn .wa{width:1.15em;height:1.15em;margin:-.15em .5em -.15em 0;vertical-align:middle;flex:none}
.wa-line{margin:1.2rem 0 .8rem}
.muted.small{font-size:.9rem}
.sticky-cta{display:none;align-items:center}
@media (max-width:760px){.sticky-cta{display:inline-flex}}

/* floating WhatsApp button must stay fixed to the screen (the shared .btn rule sets position:relative) */
.btn.sticky-cta{position:fixed;right:16px;bottom:16px;left:auto;top:auto;z-index:40}

/* location + footer links */
.loc{display:flex;align-items:center;gap:.5rem;margin:1.2rem 0 0;font-size:.95rem;color:#d7def0}
.loc strong{color:#fff;font-weight:600}
.loc .pin{width:1.15em;height:1.15em;color:var(--yellow);flex:none}
.loc-light a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.foot-info{font-style:normal;display:grid;gap:.4rem}
.foot-info p{margin:0;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.foot-info a{color:#d7def0;text-decoration:none}
.foot-info a:hover{color:var(--yellow);text-decoration:underline}
.foot-info .pin{width:1.1em;height:1.1em;color:var(--yellow);flex:none}
.foot-links{gap:1.2rem!important}
.foot-links a{display:inline-flex;align-items:center;gap:.4rem}
.foot-links .ig{width:1.15em;height:1.15em}
@media (max-width:760px){.foot-in{flex-direction:column;align-items:flex-start}}

/* footer polish on phones */
.foot-info p:first-child{flex-wrap:nowrap;align-items:flex-start}
.foot-info p:first-child .pin{margin-top:.2em}
@media (max-width:760px){.foot{padding-bottom:6rem}}
