/* AFPM Vitrine Pro 6.3 — Partner page: a single premium logo-led gallery. */
body.av-site .afpm-rich-page--partners .afpm-rich-hero {background:linear-gradient(125deg,#f6f8f5,#fff);border-bottom:1px solid #e8ebe8}
body.av-site .afpm-rich-page--partners .afpm-rich-hero__media {box-shadow:0 24px 65px rgba(16,43,44,.10)}
body.av-site .afpm-rich-page--partners .afpm-rich-hero__copy h1{color:#182f38!important}
body.av-site .avp-section{padding:clamp(54px,7vw,96px) 0 84px;background:#fff;color:#213842}
.avp-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:36px}
.avp-heading>div{flex:1;min-width:0}
.avp-heading .afpm-section-kicker{font-weight:780;color:#b47d32;letter-spacing:.12em;text-transform:uppercase;font-size:11px}
body.av-site .avp-heading h2{font-size:clamp(32px,3.6vw,51px);line-height:1.11;letter-spacing:-.055em;font-weight:820;color:#17333d;margin:14px 0 0;max-width:640px}
.avp-heading h2 em{font-style:normal;color:#b9803b}
.avp-heading>p{flex:0 1 375px;color:#677b81;font-size:14px;line-height:1.8;margin:0}
.avp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
body.av-site .avp-card{display:grid;grid-template-columns:minmax(145px,38%) minmax(0,1fr);min-height:270px;overflow:hidden;background:#fff;border:1px solid #e4ebe8;border-radius:22px;box-shadow:0 10px 30px rgba(17,49,56,.035);transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;align-items:stretch}
body.av-site .avp-card:hover{transform:translateY(-5px);border-color:#e9c79a;box-shadow:0 22px 52px rgba(21,50,55,.09)}
.avp-card__brand{min-height:235px;padding:23px 18px;background:linear-gradient(135deg,#f9faf7,#eff3f0);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;overflow:hidden}
.avp-card__number{color:#99a8a6;align-self:flex-start;font-size:11px;letter-spacing:.13em;font-weight:800}
.avp-card__number span{color:#c5ceca;font-weight:500}
body.av-site .avp-card__brand img{max-width:min(100%,260px);width:auto;max-height:125px;height:auto;display:block;object-fit:contain;image-rendering:auto;filter:none;flex-shrink:0}
.avp-card__copy{padding:32px 30px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.avp-card__tag{font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:#b8823f}
body.av-site .avp-card__copy h3{font-size:clamp(21px,2vw,28px);font-weight:800;color:#18333d;letter-spacing:-.04em;line-height:1.15;margin:10px 0}
.avp-card__copy p{font-size:13px;line-height:1.8;color:#64777e;margin:0 0 20px;max-width:450px}
.avp-card__link{margin-top:auto;border-bottom:1px solid #c5ac89;padding-bottom:4px;text-decoration:none;color:#955d23;font-weight:750;font-size:12px;display:inline-flex;align-items:center;gap:10px;transition:gap .2s}
.avp-card__link:hover{gap:16px;color:#664215}
body.av-site .avp-card--featured{grid-column:1/-1;grid-template-columns:minmax(250px,41%) minmax(0,1fr);min-height:305px;border-color:#e3e9e5}
.avp-card--featured .avp-card__brand{background:linear-gradient(145deg,#fff1f1,#faf8f6);min-height:305px;padding:24px 34px}
body.av-site .avp-card--featured .avp-card__brand img{max-width:min(100%,380px);max-height:180px}
.avp-card--featured .avp-card__copy{padding:clamp(28px,4vw,55px)}
body.av-site .avp-card--featured .avp-card__copy h3{font-size:clamp(31px,3vw,42px)}
.avp-card--featured .avp-card__copy p{font-size:15px}
.avp-guidance{margin-top:28px;padding:25px 28px;display:flex;align-items:center;gap:19px;border:1px solid #e3e9e5;border-radius:17px;background:#f8faf7}
.avp-guidance__icon{display:grid;place-items:center;width:43px;height:43px;flex:0 0 43px;border:2px solid #ba8b4b;border-radius:50%;color:#a46c2b;font-size:24px;font-weight:700;line-height:1}
.avp-guidance>div{flex:1}
.avp-guidance strong{display:block;font-size:14px;color:#1e373f;margin-bottom:3px}
.avp-guidance p{color:#64767a;font-size:12px;line-height:1.6;margin:0}
.avp-guidance>a{color:#98652b;text-decoration:none;font-weight:800;white-space:nowrap;font-size:12px}
.avp-guidance>a:hover{text-decoration:underline}
@media (max-width:1100px){.avp-grid{grid-template-columns:1fr}.avp-card--featured{grid-column:auto}.avp-heading{align-items:start}.avp-card{min-height:0}}
@media (max-width:700px){.avp-heading{display:block}.avp-heading>p{margin-top:14px}.avp-grid{gap:13px}body.av-site .avp-card,body.av-site .avp-card--featured{grid-template-columns:1fr;border-radius:18px}.avp-card__brand,.avp-card--featured .avp-card__brand{min-height:155px;padding:16px 20px;gap:12px}.avp-card__brand img,body.av-site .avp-card--featured .avp-card__brand img{max-height:93px;max-width:240px}.avp-card__copy,.avp-card--featured .avp-card__copy{padding:23px!important}.avp-card__copy h3{font-size:24px}.avp-guidance{align-items:flex-start;flex-wrap:wrap;padding:22px}.avp-guidance>a{width:100%;margin-left:60px}}
@media (prefers-reduced-motion:reduce){body.av-site .avp-card,.avp-card__link{transition:none!important}}

/* Contact location: compact, accessible Google map with a full-route fallback link. */
body.av-site .av-contact-route{padding:23px;background:#f6f8f5;border:1px solid #e4eae4;border-radius:20px;overflow:hidden}
.av-contact-route__heading{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px}
.av-contact-route__marker{display:grid;place-items:center;flex:0 0 39px;height:39px;border-radius:11px;background:#e9f1e9;color:#436952;font-size:24px;font-weight:800}
body.av-site .av-contact-route__heading h3{font-size:18px;line-height:1.3;color:#1b363d;font-weight:790;letter-spacing:-.025em;margin:0 0 7px}
body.av-site .av-contact-route__heading p{font-size:12px;line-height:1.75;color:#596f73;margin:0}
.av-contact-map{width:100%;height:248px;border-radius:14px;background:#e5eae4;border:1px solid #dce3db;overflow:hidden;position:relative}
.av-contact-map iframe{display:block;width:100%;height:100%;border:0;filter:saturate(.85)}
.av-contact-route__directions{display:inline-flex;align-items:center;gap:10px;padding-top:17px;text-decoration:none;color:#906021;font-size:12px;line-height:1.6;font-weight:800}
.av-contact-route__directions:hover{text-decoration:underline;color:#6e4819}
@media(max-width:700px){body.av-site .av-contact-route{padding:16px;border-radius:16px}.av-contact-map{height:212px}.av-contact-route__directions{font-size:12px}}

/* 6.5: high-resolution SENCO hero; keep the equipment fully visible on desktop. */
body.av-site .afpm-rich-page--partners .afpm-rich-hero__media{background:#bf071b;overflow:hidden;border-radius:20px}
body.av-site .afpm-rich-page--partners .afpm-rich-hero__media img{width:100%;height:100%;object-fit:cover;object-position:60% center;image-rendering:auto;filter:none}
@media(max-width:700px){body.av-site .afpm-rich-page--partners .afpm-rich-hero__media img{object-position:62% center}}
