.profile-thumb {
    margin: 10px 0;
}
.profile .thumb-area {
	height: auto;
	padding: 20px 0;
	overflow: hidden;
	}
.profile .thumb-c img {
	border-radius: 50%;
    max-width: 220px;
    max-height: 220px;
	width: 220px;
    height: 220px;
    object-fit: cover;
    object-position: center center;
}
.profile .thumb-s img {
	width: 100%;
	height: auto;
    max-width: 250px;
    max-height: 250px;
	width: 250px;
    height: 250px;
    object-fit: cover;
    object-position: center center;
}
.profile .btn  {
padding: 5px 14px;
font-size: 15px;
}
.profile-content {
height: 100px
}
.profile h2 {
	font-size: 25px;
}
.profiles h3 {
    margin: 20px 0 !important;
}
.sidebar h2 {
	font-size: 25px;
}
.profile h3 {
	font-size: 19px;
}
@media (min-width: 992px) and (max-width: 1200px) {
	.profile h2 {
    font-size: 23px;
}
}
.profile .btn a:active {
    top: inherit;
}


/* Twitter */
.twitter h3 {
  color: #000;
}

/* Portfolio templates */
.portfolio-lity-tall .lity-iframe-container {
  padding-top: 83%;
}

.portfolio-lity-tall .lity-iframe .lity-container,
.portfolio-lity-tall .lity-youtube .lity-container,
.portfolio-lity-tall .lity-vimeo .lity-container,
.portfolio-lity-tall .lity-facebookvideo .lity-container,
.portfolio-lity-tall .lity-googlemaps .lity-container {
  height: auto !important;
  max-width: none;
}

/* Chrome-free Lity embed (?uoe_modal=1) */
html.uoe-embed-html {
  background: transparent;
}

body.uoe-embed-modal {
  margin: 0;
  background: transparent;
  color: var(--grey-color, #f2f2f2);
}

body.uoe-embed-modal .uoe-embed-main {
  padding: 1rem 1rem 1.25rem;
  box-sizing: border-box;
}

body.uoe-embed-modal .uoe-embed-main .fat-gallery,
body.uoe-embed-modal .uoe-embed-main .padding2 {
  margin: 0;
  padding: 0;
}

body.uoe-embed-modal .uoe-embed-main .container {
  width: 100%;
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

/* No second a11y launcher inside the iframe */
body.uoe-embed-modal #cm-a11y-shadow-host,
body.uoe-embed-modal #cm-a11y-launcher,
body.uoe-embed-modal #accessibility-menu {
  display: none !important;
}

/* Soft corners; no tile shadows in embed galleries */
body.uoe-embed-modal .fat-gallery-item,
body.uoe-embed-modal .fat-thumbnail,
body.uoe-embed-modal .fat-thumbnail img,
body.uoe-embed-modal .uoe-embed-main img {
  border-radius: 4px;
}

body.uoe-embed-modal .fat-gallery-item,
body.uoe-embed-modal .fat-thumbnail img,
body.uoe-embed-modal .uoe-embed-main .wp-block-image img,
body.uoe-embed-modal .uoe-embed-main .gallery-item img {
  box-shadow: none;
}

/* Hide FAT hover / magnifying-glass overlay inside embed galleries */
body.uoe-embed-modal .fat-thumbnail-hover,
body.uoe-embed-modal .fat-hover-outer {
  display: none !important;
}

/* Parent Lity: darker blur/dim behind modal */
.lity.lity-opened {
  background: rgba(3, 12, 12, 0.88);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

/* Gallery iframes only: beat Lity's later black iframe default */
.lity.lity-gallery.lity-iframe .lity-content,
.lity.lity-gallery.lity-iframe .lity-iframe-container,
.lity.lity-gallery .lity-iframe-container iframe {
  background: transparent !important;
  box-shadow: none;
}

.lity.lity-gallery.lity-iframe .lity-content:after {
  box-shadow: none !important;
  background: transparent !important;
}

/* Gallery-only: quiet Lity's white Loading… chrome */
.lity.lity-gallery .lity-loader {
  display: none;
}

/* ESC keycap beside modal / overlay close (×) */
.uoe-esc-close {
  z-index: 9994;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  margin: 0;
  padding: 0.35rem 0.55rem;
  border: 2px solid #fff;
  border-radius: 7px;
  background: transparent;
  color: #fff;
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

.lity > .uoe-esc-close {
  position: fixed;
  top: 12px;
  right: 56px;
}

.overlay .uoe-esc-close {
  position: absolute;
  z-index: 100001;
  top: 36px;
  right: 110px;
}

.uoe-esc-close:hover,
.uoe-esc-close:focus-visible {
  background: rgba(255, 255, 255, 0.12);
  outline: none;
}

/* Smaller ESC-style cue when gallery embed can scroll down */
body.uoe-embed-modal .uoe-scroll-hint {
  z-index: 9995;
  position: fixed;
  left: 50%;
  bottom: 1rem;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  margin: 0;
  padding: 0.28rem 0.45rem;
  border: 2px solid #fff;
  border-radius: 7px;
  background: transparent;
  color: #fff;
  font-family: inherit;
  font-size: 0.65rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45);
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
}

body.uoe-embed-modal .uoe-scroll-hint[hidden] {
  display: none;
}

body.uoe-embed-modal .uoe-scroll-hint:hover,
body.uoe-embed-modal .uoe-scroll-hint:focus-visible {
  background: rgba(255, 255, 255, 0.12);
  outline: none;
}

@media (prefers-reduced-motion: reduce) {
  .lity.lity-opened {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background: rgba(3, 12, 12, 0.94);
  }
}

.portfolio-logos .feature img {
  border-radius: 17px;
}

.portfolio-logos .cards .padding {
  padding: 14px;
}

/* Infographics masonry: natural portrait/landscape heights */
.cards-masonry .cards-masonry-grid {
  column-count: 1;
  column-gap: 10px;
}

.cards-masonry .cards-masonry-item {
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  width: 100%;
  display: inline-block;
  vertical-align: top;
  margin: 0 0 10px;
  float: none;
  padding: 5px;
  box-sizing: border-box;
}

.cards-masonry .feature {
  display: block;
  line-height: 0;
}

.cards-masonry .feature img,
.cards-masonry .feature .playbutton {
  max-width: 100%;
}

.cards-masonry .feature img {
  width: 100%;
  height: auto !important;
  object-fit: contain;
  display: block;
}

.cards-masonry .text {
  padding: 14px 8px 24px 0;
  line-height: normal;
}

@media (min-width: 768px) {
  .cards-masonry .cards-masonry-grid {
    column-count: 2;
  }
}

@media (min-width: 992px) {
  .cards-masonry .cards-masonry-grid {
    column-count: 3;
  }
}

.portfolio-digital-magazines .cards .feature img {
  border: solid 1px #DCDCDC;
}

.portfolio-digital-magazines .top {
  padding: 0 !important;
}

.portfolio-emails .cards .feature img {
  height: 500px;
}

@media (min-width: 768px) and (max-width: 992px) {
  .portfolio-emails .cards .feature img {
    height: 700px !important;
  }
}

@media (max-width: 767px) {
  /* Beat global .feature img { height: 100% } so the card wraps the thumb */
  .portfolio-film .cards .feature,
  .portfolio-animation .cards .feature {
    display: block;
  }

  .portfolio-film .cards .feature img:not(.playbutton),
  .portfolio-animation .cards .feature img:not(.playbutton),
  .portfolio-logos .cards .feature img:not(.playbutton),
  .portfolio-digital-magazines .cards .feature img:not(.playbutton),
  .portfolio-emails .cards .feature img:not(.playbutton) {
    display: block;
    width: 100%;
    height: auto !important;
    aspect-ratio: 16 / 10;
    object-fit: cover;
  }

  /* Keep play/open icons square and centered — not forced to 16/10 */
  .portfolio-film .cards .feature img.playbutton,
  .portfolio-animation .cards .feature img.playbutton {
    width: auto !important;
    height: auto !important;
    max-width: 56px !important;
    max-height: 56px !important;
    aspect-ratio: auto;
    object-fit: contain;
  }
}

.portfolio-websites .cards .feature img {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.portfolio-emails .cards .text,
.portfolio-websites .cards .text {
  padding-bottom: 40px;
}

.cards .category a {
  display: none;
}

.feature.top img,
.feature .top,
img.top {
  object-position: top;
}

/* Page - Feature */
.page-feature h2 {
  font-weight: 700;
  text-transform: uppercase;
}

.page-feature .title {
  background-color: #003c3c;
  color: #FFFFFF;
  width: 300px;
  padding: 11px;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 24px;
  margin-bottom: -20px;
  margin-left: 3px;
}

@media (prefers-reduced-motion: no-preference) {
  .fade-in {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
  }

  .fade-in.visible {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .fade-in {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Search fallback form */
.search-fallback-input {
  padding: 15px;
  width: 95%;
  font-size: 15px;
}

/* News feed */
.news-feed + .container-fluid .bread-current {
  display: none;
}

/* Infographics empty state */
.infographics-coming-soon {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 40vh;
  text-align: center;
}

.infographics-coming-soon h2 {
  margin: 0;
}

.seo-intro-block {
  margin: 0;
  padding-top: 20px;
}

.seo-intro-lead {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1.25rem;
}

.seo-intro-title {
  margin: 0;
  text-align: left;
}

.uoe-gif-toggle {
  flex: 0 0 auto;
  margin: 0;
  padding: 0.35rem 0.85rem;
  border: 1px solid var(--uoedark-color, #003c3c);
  border-radius: 50px;
  background: transparent;
  color: var(--uoedark-color, #003c3c);
  font-family: inherit;
  font-size: 0.75rem;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.02em;
  cursor: pointer;
}

.uoe-gif-toggle:hover,
.uoe-gif-toggle:focus-visible {
  background: var(--uoedark-color, #003c3c);
  color: #fff;
}

.uoe-gif-toggle[aria-pressed="true"] {
  background: var(--uoedark-color, #003c3c);
  color: #fff;
}

.seo-intro {
  display: none;
  max-width: 42rem;
  margin: 0 auto;
  text-align: center;
  font-size: 1.05rem;
  line-height: 1.55;
  text-wrap: balance;
  opacity: 0.9;
}

.content hr.seo-intro-rule {
  border: 0;
  border-top: 1px solid #DCDCDC77;
  margin: 2rem 0;
  height: 0;
  width: 100%;
}

@media (max-width: 767px) {
  .seo-intro-title {
    padding-bottom: 0;
  }
}

