/* Municipal Profile photo rotation; the main About hero remains static. */
html body #about-content .municipal-photo-card__image::before {
    content: none !important;
}

html body #about-content .municipal-photo-card__slide {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 52%;
    opacity: 0;
    transform: scale(1.006);
    transition: opacity 2.25s cubic-bezier(.4, 0, .2, 1), transform 8s ease-out;
    will-change: opacity, transform;
}

html body #about-content .municipal-photo-card__slide.is-active {
    opacity: 1;
    transform: scale(1);
}

/* Smooth image-only zoom; the surrounding card remains completely stationary. */
html body #about-content .municipal-photo-card__image .municipal-photo-card__slide {
    transform-origin: center center;
    transition:
        opacity 2.25s cubic-bezier(.4, 0, .2, 1),
        transform 1.35s cubic-bezier(.22, .61, .36, 1) !important;
}

html body #about-content .municipal-photo-card__image:hover .municipal-photo-card__slide.is-active {
    transform: scale(1.065);
}

@media (max-width: 720px) {
    html body #about-content .municipal-photo-card__slide {
        object-position: 50% 72%;
    }
}

/* Final directory color hierarchy. */
html body #about-content #organization .office-directory article > span{border-color:#aebfce!important;background:transparent!important;color:#00345f!important;font-family:Manrope,Arial,sans-serif!important}
html body #about-content #organization .office-directory h3 a,
html body #about-content #organization .office-directory h3 a:hover,
html body #about-content #organization .office-directory h3 a:focus{color:#002e5d!important;font-weight:800!important;text-decoration:none!important}
html body #about-content #organization .office-directory article:nth-child(-n+2){position:relative!important;padding-inline:18px!important;border-top-color:#8ea6ba!important;background:linear-gradient(90deg,rgba(0,46,93,.045),transparent 82%)!important}
html body #about-content #organization .office-directory article:nth-child(-n+2)>span{border-color:#002e5d!important;background:#002e5d!important;color:#fff!important}

/* Compact and visually consistent office rows. */
html body #about-content #organization{padding-block:42px!important}
html body #about-content #organization .section-heading{margin-bottom:20px!important}
html body #about-content #organization .office-directory{gap:0 34px!important}
html body #about-content #organization .office-directory article,
html body #about-content #organization .office-directory article:hover,
html body #about-content #organization .office-directory article:focus-within{
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:15px!important;
    min-height:126px!important;
    padding:20px 0!important;
}
html body #about-content #organization .office-directory article:nth-child(-n+2){padding-inline:14px!important}
html body #about-content #organization .office-directory article>span{width:46px!important;height:46px!important;font-size:14px!important}
html body #about-content #organization .office-directory h3,
html body #about-content #organization .office-directory article:nth-child(-n+2) h3{margin:0 0 6px!important;font-size:14px!important;line-height:1.4!important}
html body #about-content #organization .office-directory h3 a,
html body #about-content #organization .office-directory article:nth-child(-n+2) h3 a{font-size:14px!important;line-height:1.4!important}
html body #about-content #organization .office-directory p,
html body #about-content #organization .office-directory article:nth-child(-n+2) p{font-size:12px!important;line-height:1.55!important}
@media(max-width:720px){
    html body #about-content #organization .office-directory article,
    html body #about-content #organization .office-directory article:nth-child(-n+2){min-height:0!important;padding:18px 0!important;background:transparent!important}
}
html body #about-content #organization .office-directory article:nth-child(-n+2) h3 a{font-size:1.04rem!important}
html body #about-content #organization .office-directory article:nth-child(-n+2) p{color:#536b7d!important}

/* Navy institutional hierarchy for the reordered municipal directory. */
html body #about-content #organization .office-directory article > span {
    border-color: #aebfce !important;
    color: #00345f !important;
    font-family: Manrope, Arial, sans-serif !important;
}

html body #about-content #organization .office-directory h3 a,
html body #about-content #organization .office-directory h3 a:hover,
html body #about-content #organization .office-directory h3 a:focus {
    color: #002e5d !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

html body #about-content #organization .office-directory article:nth-child(-n+2) {
    position: relative !important;
    padding-inline: 18px !important;
    border-top-color: #8ea6ba !important;
    background: linear-gradient(90deg, rgba(0,46,93,.045), transparent 82%) !important;
}

html body #about-content #organization .office-directory article:nth-child(-n+2) > span {
    border-color: #002e5d !important;
    background: #002e5d !important;
    color: #fff !important;
}

html body #about-content #organization .office-directory article:nth-child(-n+2) h3 a {
    font-size: 1.04rem !important;
}

html body #about-content #organization .office-directory article:nth-child(-n+2) p {
    color: #536b7d !important;
}

@media (prefers-reduced-motion: reduce) {
    html body #about-content .municipal-photo-card__slide {
        transition: opacity 1ms linear !important;
        transform: none !important;
    }
}

/* Restore the original About-page office directory treatment. */
html body #about-content #organization .office-directory {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 0 42px !important;
    max-width: none !important;
    margin-inline: 0 !important;
}

html body #about-content #organization .office-directory article,
html body #about-content #organization .office-directory article:hover,
html body #about-content #organization .office-directory article:focus-within {
    display: grid !important;
    grid-template-columns: 54px minmax(0, 1fr) !important;
    align-content: center !important;
    gap: 18px !important;
    min-height: 170px !important;
    padding: 30px 0 !important;
    border: 0 !important;
    border-top: 1px solid #cfdbdf !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

html body #about-content #organization .office-directory article > span {
    display: grid !important;
    place-items: center !important;
    width: 50px !important;
    height: 50px !important;
    border: 1px solid #cddae1 !important;
    border-radius: 50% !important;
    background: transparent !important;
    color: #087ac7 !important;
    font-weight: 800 !important;
}

html body #about-content #organization .office-directory h3 {
    margin: 3px 0 10px !important;
    font-size: 1rem !important;
    line-height: 1.4 !important;
}

html body #about-content #organization .office-directory p {
    max-width: 420px !important;
    margin: 0 !important;
    color: #5f706f !important;
    font-size: .79rem !important;
    line-height: 1.7 !important;
}

@media (max-width: 1050px) {
    html body #about-content #organization .office-directory {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 720px) {
    html body #about-content #organization .office-directory {
        grid-template-columns: 1fr !important;
        gap: 0 !important;
    }
    html body #about-content #organization .office-directory article {
        min-height: 0 !important;
        padding: 22px 0 !important;
    }
}

/* Final directory palette override. */
html body #about-content #organization .office-directory article>span{border-color:#aebfce!important;background:transparent!important;color:#00345f!important}
html body #about-content #organization .office-directory h3 a,
html body #about-content #organization .office-directory h3 a:hover,
html body #about-content #organization .office-directory h3 a:focus{color:#002e5d!important;font-weight:800!important;text-decoration:none!important}
html body #about-content #organization .office-directory article:nth-child(-n+2){padding-inline:18px!important;border-top-color:#8ea6ba!important;background:linear-gradient(90deg,rgba(0,46,93,.045),transparent 82%)!important}
html body #about-content #organization .office-directory article:nth-child(-n+2)>span{border-color:#002e5d!important;background:#002e5d!important;color:#fff!important}

/* Final compact sizing override. */
html body #about-content #organization{padding-block:42px!important}
html body #about-content #organization .section-heading{margin-bottom:20px!important}
html body #about-content #organization .office-directory{gap:0 34px!important}
html body #about-content #organization .office-directory article,
html body #about-content #organization .office-directory article:hover,
html body #about-content #organization .office-directory article:focus-within{grid-template-columns:48px minmax(0,1fr)!important;gap:15px!important;min-height:126px!important;padding:20px 0!important}
html body #about-content #organization .office-directory article:nth-child(-n+2){padding-inline:14px!important}
html body #about-content #organization .office-directory article>span{width:46px!important;height:46px!important;font-size:14px!important}
html body #about-content #organization .office-directory h3,
html body #about-content #organization .office-directory article:nth-child(-n+2) h3{margin:0 0 6px!important;font-size:14px!important;line-height:1.4!important}
html body #about-content #organization .office-directory h3 a,
html body #about-content #organization .office-directory article:nth-child(-n+2) h3 a{font-size:14px!important;line-height:1.4!important}
html body #about-content #organization .office-directory p,
html body #about-content #organization .office-directory article:nth-child(-n+2) p{font-size:12px!important;line-height:1.55!important}
@media(max-width:720px){html body #about-content #organization .office-directory article,html body #about-content #organization .office-directory article:nth-child(-n+2){min-height:0!important;padding:18px 18px!important;background:transparent!important}}

/* Keep every office number neutral and outlined, including the first two offices. */
html body #about-content #organization .office-directory article:nth-child(-n+2)>span{
  border-color:#aebfce!important;
  background:transparent!important;
  color:#00345f!important;
}
