/* The main file for applying site specific styles to elements defined in the other CSS files. */

html {
  background-color: var(--primary-80);
}

body {
  font-family: var(--typography-body-md-family);
}

body * {
  scroll-margin-top: clamp(3.125rem, -17.768rem + 38.69vw, 11.25rem);
}

.page-wrap {
  padding-top: var(--mobile-nav-fixed-height);
  background-color: var(--surface-base-light);
}

.page-body {
  background-color: transparent;
  background-image: url('../img/bg-abcs-logomark-color.svg');
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 1704px 1753px;
}

.feature-section {
  background-color: var(--surface-primary-light);
}

.header-feature .feature-header .heading,
.footer-feature .feature-header .heading {
  font-size: 3.875rem;
  color: var(--surface-primary-inverse);
}

.header-feature .feature-header .desc,
.footer-feature .feature-header .desc {
  font-size: 1.125rem;
  color: var(--surface-primary-inverse);
}


/* Full Width */

.home .page-body {
  padding: 0;
}

.home .page-body .content {
  max-width: 100%;
}


/* Wide Width */

.cake-gallery-landing-page .page-body .content {
  max-width: var(--max-width-content-wrap);
}


/* Sidebar Right Layout */

.sidebar-right .page-body {
  background-image: none;
}

.sidebar-right .page-body::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100vw;
  height: 100%;
  background-image: url('../img/bg-abcs-logomark-color.svg');
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 1704px 1753px;
  pointer-events: none;
  z-index: 0;
}

.sidebar-right .page-body,
.doctor-content-wrap {
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-variable-xl);
  max-width: calc(var(--max-width-content-wrap) + var(--spacing-variable-xl) + var(--spacing-variable-xl));
  margin: var(--spacing-variable-md) auto 0;
}

.sidebar-right .page-body .content {
  max-width: none;
  margin: 0;
}

.sidebar-right .page-body {
  margin-top: 0;
  grid-auto-flow: dense;
}

.sidebar-right .sidebar {
  grid-row: 1;
}

.sidebar-right .content {
  grid-row: 2;
}

.sidebar-right .sidebar {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-variable-md);
}

.sidebar-right .sidebar .widget-title {
  margin: 0 0 var(--spacing-variable-sm) 0;
  font-family: var(--typography-heading-4-family);
  font-size: var(--typography-heading-4-size);
  font-weight: 500;
  color: var(--text-primary-main);
}

.sidebar-right .content,
.sidebar-right .sidebar {
  z-index: 5;
}


/* Extended Header */

.page-header .header-inner {
  max-width: calc(2000px + var(--spacing-variable-md) + var(--spacing-variable-md));
  margin-left: auto;
  margin-right: auto;
}

.page-header .header-secondary-nav-wrap .header-secondary-nav-inner,
.page-header .breadcrumbs-wrap .breadcrumb {
  max-width: 2000px;
  margin-left: auto;
  margin-right: auto;
}


/* Page Header */

.page-header {
  position: relative;
  background-color: #fff;
  z-index: 10;
}

.page-header .header-inner {
  display: flex;
  padding: 0 var(--spacing-variable-md);
  align-items: center;
  box-shadow: 0 5px 1px 0 rgba(0, 0, 0, 0.00), 0 3px 1px 0 rgba(0, 0, 0, 0.01), 0 2px 1px 0 rgba(0, 0, 0, 0.02), 0 1px 1px 0 rgba(0, 0, 0, 0.03);
}

.page-header .header-section:first-of-type {
  text-align: left;
}

.page-header .header-section:last-of-type {
  text-align: right;
}

.page-header .business-logo {
  display: none;
  flex-grow: 1;
  max-width: 260px;
  min-width: 150px;
}


/* Breadcrumbs */

.page-header .breadcrumbs-wrap {
  padding: var(--spacing-static-2xs) var(--spacing-variable-md) var(--spacing-static-xs);
  text-align: center;
  background: var(--surface-primary-light);
  box-shadow: 0 5px 1px 0 rgba(0, 0, 0, 0.00) inset, 0 3px 1px 0 rgba(0, 0, 0, 0.01) inset, 0 2px 1px 0 rgba(0, 0, 0, 0.02) inset, 0 1px 1px 0 rgba(0, 0, 0, 0.03) inset;
}

.page-header .breadcrumbs-wrap nav {
  container-type: inline-size; 
}

.page-header .breadcrumbs-wrap .breadcrumb-item {
  color: var(--text-primary-accent);
  font-family: var(--typography-nav-breadcrumb-family);
  font-size: var(--typography-nav-breadcrumb-size);
  letter-spacing: 0;
  display: inline;
}

.page-header .breadcrumbs-wrap .breadcrumb-item > a {
  color: var(--text-primary-accent);
  text-decoration: none;
}

.page-header .breadcrumbs-wrap .breadcrumb-item.active > a,
.page-header .breadcrumbs-wrap .breadcrumb-item > a:hover,
.page-header .breadcrumbs-wrap .breadcrumb-item > span {
  text-decoration: underline;
}

.page-header .breadcrumbs-wrap .breadcrumb {
  text-align: left;
  padding-inline-start: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: 100cqw;
}


/* Header Feature */

.header-feature {
  text-align: center;
  padding: var(--spacing-variable-xl);
  background: var(--surface-base-soft);
  box-shadow: 0 -5px 1px 0 rgba(0, 0, 0, 0.00) inset, 0 -3px 1px 0 rgba(0, 0, 0, 0.01) inset, 0 -2px 1px 0 rgba(0, 0, 0, 0.02) inset, 0 -1px 1px 0 rgba(0, 0, 0, 0.03) inset;
}

.header-feature .header-feature-inner {
  max-width: var(--max-width-content-wrap);
  margin-left: auto;
  margin-right: auto;
}

.header-feature .header-feature-inner .page-title {
  color: var(--text-primary-main);
  text-align: center;
  font-family: var(--typography-heading-1-family);
  font-size: var(--typography-heading-1-size);
  font-weight: 400;
  line-height: 1.2; /* 57.6px */
  letter-spacing: -0.48px;
}


/* Content */

.content iframe,
.content object,
.content video,
.content embed {
  max-width: 100%;
  max-height: calc(((100vw - 26px) * 9) / 16);
}

.content img {
  max-width: 100%;
  height: auto;
}


.content .cr-img-slider {
  height: auto; /* @js - This override shouldn't be needed, look into why these are too tall */
}



.wp-block-image.aligncenter > figcaption.wp-element-caption,
img.aligncenter figcaption.wp-element-caption {
  background: var(--surface-secondary-light);
  margin: 0;
  padding: var(--spacing-variable-xs) var(--spacing-variable-sm);
  text-wrap-style: pretty;
}

figure.wp-block-embed-youtube {
  margin-top: var(--spacing-variable-xl);
  margin-bottom: var(--spacing-variable-xl);
}

.page-body .content > :first-child,
.page-body .content > .doctor-list-wrap > h2:first-of-type,
.page-body .content .section-content > :first-child,
.doctor-profile-content .doctor-profile-tab-panel > :first-child,
.doctor-content-sidebar .doctor-locations-wrap > :first-child {
  margin-top: 0;
}

hr,
hr.wp-block-separator {
  border: none;
  height: 1px;
  background: var(--border-primary-light);
  margin: var(--spacing-variable-xl) 0;
}

.content .cakeYouTubeContainer {
  border: 1px solid var(--border-primary-light);
  box-sizing: content-box;
}

.wp-block-cr-faux-heading,
.faux-heading-1,
.faux-heading-2,
.faux-heading-3,
.faux-heading-4,
.faux-heading-5,
.faux-heading-6 {
  display: block;
}

h1:not(.gb-text), .content .faux-heading-1,
h2:not(.gb-text), .content .faux-heading-2,
h3:not(.gb-text), .content .faux-heading-3,
h4:not(.gb-text), .content .faux-heading-4,
h5:not(.gb-text), .content .faux-heading-5,
h6:not(.gb-text), .content .faux-heading-6 {
  font-style: normal;
  color: var(--text-primary-main);
}

h1:not(.gb-text), .content .faux-heading-1 {
  margin: var(--typography-heading-1-margin-top) 0 var(--typography-heading-1-margin-bottom) 0;
  font-family: var(--typography-heading-1-family);
  font-size: var(--typography-heading-1-size);
  letter-spacing: -0.48px;
}

h2:not(.gb-text), .content .faux-heading-2 {
  margin: var(--typography-heading-2-margin-top) 0 var(--typography-heading-2-margin-bottom) 0;
  font-family: var(--typography-heading-2-family);
  font-size: var(--typography-heading-2-size);
  font-weight: 500;
  letter-spacing: -0.01556rem;
}

h3:not(.gb-text), .content .faux-heading-3 {
  margin: var(--typography-heading-3-margin-top) 0 var(--typography-heading-3-margin-bottom) 0;
  font-family: var(--typography-heading-3-family);
  font-size: var(--typography-heading-3-size);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.01333rem;
}

h4:not(.gb-text), .content .faux-heading-4 {
  margin: var(--typography-heading-4-margin-top) 0 var(--typography-heading-4-margin-bottom) 0;
  font-family: var(--typography-heading-4-family);
  font-size: var(--typography-heading-4-size);
  font-weight: 500;
  line-height: 1.3
}

h5:not(.gb-text), .content .faux-heading-5 {
  margin: var(--typography-heading-5-margin-top) 0 var(--typography-heading-5-margin-bottom) 0;
  font-family: var(--typography-heading-5-family);
  font-size: var(--typography-heading-5-size);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.01rem;
  text-transform: uppercase;
}

h6:not(.gb-text), .content .faux-heading-6 {
  margin: var(--typography-heading-6-margin-top) 0 var(--typography-heading-6-margin-bottom) 0;
  font-family: var(--typography-heading-6-family);
  font-size: var(--typography-heading-6-size);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.01556rem;
  text-transform: uppercase;
}

.content p,
.content ul,
.content ol {
  margin-top: 0;
  margin-bottom: var(--typography-body-md-margin-bottom);
  font-family: var(--typography-body-md-family);
  font-size: var(--typography-body-md-size);
  line-height: 1.5;
}

.content ul li,
.content ol li {
  margin-bottom: var(--spacing-variable-2xs);
}

/* Quotes */

.content blockquote cite {
  font-style: normal;
  margin-top: var(--spacing-variable-md);
  display: block;
  color: var(--text-primary-main);
}

.content blockquote p > cite {
  font-size: 0.8em;
}

.content blockquote:not(figure > blockquote, .kt-testimonial-content),
.content blockquote.wp-block-quote {
  margin: var(--typography-body-blockquote-margin-top) 0 var(--typography-body-blockquote-margin-bottom) 0;
  padding: var(--spacing-static-2xs) 0 var(--spacing-static-xs) var(--spacing-static-md);
  border-left: 1px solid var(--border-primary-light);
}

.content blockquote:has(p.has-text-align-center),
.content blockquote.wp-block-quote:has(p.has-text-align-center) {
  padding: var(--spacing-static-2xs) var(--spacing-static-md) var(--spacing-static-2xs);
  border-left: none;
}

.content blockquote p {
  font-size: 1.4em;
  color: var(--text-primary-accent);
}

.content blockquote p:last-child {
  margin-bottom: 0;
}

.content .wp-block-pullquote {
  font-size: 1rem;
}

.content .wp-block-pullquote p {
  font-size: var(--typography-body-pullquote-size);
  font-weight: 300;
  color: var(--text-primary-accent);
}

.hide-sm,
.find-surgeon-form .form-submit .label {
  display: none;
}

.pretty {
  text-wrap-style: pretty;
}



/* Tabs Block */

.content .wp-block-atbs-tabs {
  border-color: var(--border-gray-light)!important;
  margin-top: 2rem !important;
}

.content .wp-block-atbs-tabs .atbs__tab-labels {
  gap: 0.5rem;
}

.content .wp-block-atbs-tabs {
  border: 1px solid var(--border-gray-light);
}

.content .wp-block-atbs-tabs .atbs__tab-labels .atbs__tab-label,
.content .atbs-tabs-accordion {
  padding: var(--spacing-variable-2xs) var(--spacing-variable-sm);
  background: var(--surface-primary-light);
  color: #021627;
  text-align: center;
  border-top: 3px solid var(--surface-primary-light);
  border-left: 1px solid var(--surface-primary-light);
  border-right: 1px solid var(--surface-primary-light);
  border-bottom: 1px solid var(--border-gray-light);
}

.content .wp-block-atbs-tabs .atbs__tab-labels .atbs__tab-label.active,
.content .atbs-tabs-accordion.active {
  background: var(--surface-base-light);
  color: #0F0F0F!important;
  border-top: 3px solid var(--border-primary-soft)!important;
  border-bottom: 1px solid var(--surface-base-light);
}

.content .wp-block-atbs-tabs .atbs__tab-labels .atbs__tab-label.active {
  border-left: 1px solid var(--border-gray-light);
  border-right: 1px solid var(--border-gray-light);
}

.content .atbs-tabs-accordion.active {
  border-left: none;
  border-right: none;
}

.wp-block-atbs-tabs .atbs__tab-panel {
  padding: 1rem 1.25rem 1.25rem;
  background: var(--surface-base-light);
}

.content .wp-block-atbs-tabs .atbs__tab-content :last-child {
  margin-bottom: 0;
}


/* --- Kadence Table of Contents --- */

.kb-table-of-content-nav .kb-table-of-contents-title-wrap > .kb-table-of-contents-title-btn > .kb-table-of-contents-title {
  font-weight: 500;
}

.kb-table-of-content-nav .kb-table-of-content-wrap .kb-table-of-content-list {

  padding: var(--spacing-static-3xs) 0 var(--spacing-static-3xs) var(--spacing-static-3xs)!important;
}

.wp-block-kadence-tableofcontents .kb-table-of-content-list li {
  list-style-type: none;
  position: relative;
  padding-left: 1em;
}

.wp-block-kadence-tableofcontents .kb-table-of-content-list li::before {
  content: '»';
  color: var(--text-primary-accent);
  font-size: 0.8em;
  position: absolute;
  left: 0;
}


/* --- Kadence Accordion --- */

.wp-block-kadence-accordion {
  margin-bottom: var(--spacing-variable-xl);
}

.content .wp-block-kadence-accordion .kt-accordion-header-wrap,
.wp-block-kadence-accordion .kt-accordion-panel-inner > :last-child {
  margin-bottom: 0;
}

.kt-accordion-inner-wrap > .wp-block-kadence-pane:last-child > .kt-accordion-header-wrap > button.kt-blocks-accordion-header {
  border-bottom: none;
}



/* Surgeon search */

/* Card Container - Mobile First (single column) */
.card-container {
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  gap: var(--spacing-variable-md);
}

/* Individual Card */

.card {
  border: 1px solid var(--border-base-light);
  background: var(--surface-base-light);
  box-shadow: 0 7px 2px 0 rgba(0, 0, 0, 0.00), 0 5px 2px 0 rgba(0, 0, 0, 0.01), 0 3px 2px 0 rgba(0, 0, 0, 0.04), 0 1px 1px 0 rgba(0, 0, 0, 0.07), 0 0 1px 0 rgba(0, 0, 0, 0.08);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.card-body {
  display: flex;
  padding: var(--spacing-static-2xs);
  gap: var(--spacing-static-xs);
  position: relative;
}

/* Doctor Photo */
.card-photo {
  width: 100px;
  height: 120px;
  flex-shrink: 0;
  background-color: #e8edf2;
  overflow: hidden;
}

.card-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Placeholder silhouette */

.card-photo.placeholder {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  background: linear-gradient(to bottom, #d8dfe6 0%, #c8d0d8 100%);
}

.card-photo.placeholder::after {
  content: '';
  width: 60px;
  height: 70px;
  background-color: #bcc5ce;
  border-radius: 50% 50% 0 0;
  margin-bottom: -10px;
}

.card-container .card {
  position: relative;
}

.card-container .card .patient-certified {
  position: absolute;
  bottom: var(--spacing-static-3xs);
  right: var(--spacing-static-3xs);
  width: 60px;
  height: 58px;
}

.card-container .card .patient-certified img {
  width: 100%;
  height: 100%;
  display: block;
}


/* Doctor Info */

.card-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: var(--text-secondary-main);
  justify-content: stretch;
  padding: var(--spacing-variable-3xs) 0;
}

.doctor-name {
  font-size: var(--typography-heading-5-size);
  font-weight: 500;
  margin-bottom: var(--spacing-static-3xs);
}

.post-type-archive-doctor-profile .doctor-name {
  font-weight: normal;
}

.post-type-archive-doctor-profile a.int-docs {
  float: none;
  margin-bottom: var(--spacing-static-lg);
  width: 100%;
  text-align: center;
}

body:not(.post-type-archive-doctor-profile) .doctor-name a,
a.profile-link{
  color: var(--text-secondary-main);
  text-decoration: none;
  border-bottom: 1px solid transparent;
}

.doctor-name a:hover,
a.profile-link:hover {
  border-bottom: 1px solid currentColor;
}

p.doctor-location,
p.doctor-zip {
  font-size: var(--typography-body-sm-size);
  color: #555;
  line-height: 1.3;
  margin-bottom: 0;
  text-transform: capitalize;
}


/* Badge */

.badge {
  position: absolute;
  bottom: 12px;
  right: 12px;
  width: 50px;
  height: 50px;
}

.badge img {
  width: 100%;
  height: 100%;
}


/* Profile Link */

.card-footer {
  background-color: #e8f4f8;
  padding: 12px 16px;
}

a.profile-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #2c5f7c;
  text-decoration: none;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.profile-link:hover {
  color: #1a4a5e;
}

.profile-link::after {
  content: '→';
  font-size: 1rem;
}





/* Page Body - Doctor Profile */

.single-doctor-profile .page-body {
  padding-top: var(--spacing-variable-sm);
}

/* Header Feature - Doctor Profile */

.header-feature-doctor-profile {
  text-align: left;
  padding: var(--spacing-variable-xl);
  background: var(--surface-base-soft);
  box-shadow: inset 0px -1px 1px 0px rgba(0, 0, 0, 0.03), inset 0px -2px 1px 0px rgba(0, 0, 0, 0.02), inset 0px -3px 1px 0px rgba(0, 0, 0, 0.01), inset 0px -5px 1px 0px rgba(0, 0, 0, 0);
}

.header-feature-doctor-profile .header-feature-inner {
  max-width: var(--max-width-content-wrap);
  margin-left: auto;
  margin-right: auto;
}

.header-feature-doctor-profile .doctor-profile-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--spacing-variable-xl);
}

.header-feature-doctor-profile .doctor-profile-container .sidebar {
  grid-column: 1 / -1;
}

/* Profile Image */

.header-feature-doctor-profile .profile-image-container {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: var(--spacing-static-sm);
  justify-content: space-between;
}

.header-feature-doctor-profile .profile-image-container > img,
.header-feature-doctor-profile .profile-image-container > :not(.patient-certified) img {
  width: 100%;
  max-width: var(--max-width-columns-2);
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--scale-radius-md);
}

.header-feature-doctor-profile .profile-image-placeholder {
  width: 100%;
  max-width: var(--max-width-columns-2);
  aspect-ratio: 4 / 5;
  background: var(--surface-gray-light);
  border-radius: var(--radius-md);
}


/* Main Content */

.header-feature-doctor-profile .main-content {
  display: flex;
  flex-direction: column;
}

.header-feature-doctor-profile .specialty-container {
  padding-bottom: var(--spacing-static-xs);
}

.header-feature-doctor-profile .specialty {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-xs);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--primary-60);
}

.header-feature-doctor-profile .doctor-name-container {
  padding-bottom: var(--spacing-static-xs);
}

.header-feature-doctor-profile .doctor-name {
  font-family: var(--font-brand-primary);
  font-size: var(--font-size-2xl);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.01em;
  color: var(--primary-80);
  margin: 0;
}

.header-feature-doctor-profile .clinic-name-container {
  padding-bottom: var(--spacing-static-sm);
}

.header-feature-doctor-profile .clinic-name {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-md);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--secondary-60);
}

.header-feature-doctor-profile .description-container {
  padding-bottom: var(--spacing-static-md);
}

.header-feature-doctor-profile .doctor-description {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-sm);
  font-weight: 400;
  line-height: 1.5;
  color: var(--primary-90);
  margin: 0;
}

.header-feature-doctor-profile .areas-served-container {
  display: flex;
}

.header-feature-doctor-profile .areas-served-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-static-3xs);
}

.header-feature-doctor-profile .areas-served-label {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-xs);
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--primary-90);
}

.header-feature-doctor-profile .areas-served-value {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-sm);
  font-weight: 400;
  line-height: 1.5;
  color: var(--tertiary-50);
}


/* Sidebar */

.header-feature-doctor-profile .sidebar {
  display: flex;
  flex-direction: column-reverse;
  gap: var(--spacing-static-sm);
}

.header-feature-doctor-profile .return-to-search {
  display: flex;
  justify-content: center;
}

.header-feature-doctor-profile .return-link {
  display: flex;
  align-items: center;
  gap: var(--spacing-static-2xs);
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-xs);
  font-weight: 500;
  line-height: 1.5;
  color: var(--primary-70);
  text-decoration: none;
}

.header-feature-doctor-profile .return-link:hover {
  color: var(--primary-80);
}

.header-feature-doctor-profile .return-link svg {
  width: 24px;
  height: 24px;
}

.header-feature-doctor-profile .actions-container {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-static-sm);
}

.header-feature-doctor-profile .action-button {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-static-2xs);
  padding: var(--spacing-static-xs) var(--spacing-static-xs);
  background: var(--secondary-10);
  border: 1px solid var(--secondary-20);
  border-radius: var(--button-radius);
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-xs);
  font-weight: 500;
  line-height: 1.5;
  color: var(--secondary-80);
  text-decoration: none;
  text-align: center;
}

.header-feature-doctor-profile .action-button:hover {
  background: var(--secondary-15);
}

.header-feature-doctor-profile .action-button svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}

.header-feature-doctor-profile .social-links {
  display: flex;
  width: 100%;
  justify-content: center;
  gap: var(--spacing-static-md);
  padding: var(--spacing-static-2xs) 0;
}

.header-feature-doctor-profile .social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--primary-70);
  position: relative;
}

.header-feature-doctor-profile .social-link:hover {
  color: var(--primary-60);
}

.header-feature-doctor-profile .social-link svg {
  width: 32px;
  height: 32px;
  fill: var(--surface-primary-inverse);
}

.header-feature-doctor-profile .social-link .platform-name {
  display: block;
  position: absolute;
  top: -1px;
  right: -1px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.header-feature-doctor-profile .patient-certified {
  width: 100px;
  height: 96px;
  aspect-ratio: 25/24;
}






/* Doctor Profile Tabs */

.doctor-profile-tabs {
  position: relative;
  padding: 0;
  margin-bottom: var(--spacing-variable-xl);
  width: calc(100% + var(--spacing-variable-xl));
  container-type: inline-size;
  overflow: hidden;
}

.doctor-profile-tabs::after {
  content: var(--icon-chevron-right-tab);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4rem;
  height: 2rem;
  text-align: right;
  background: linear-gradient(to right, transparent, var(--surface-base-light) 40%);
  padding-left: 1rem;
  pointer-events: none;
}

.doctor-profile-tabs-container {
  display: block;
  width: 100cqw;
  padding-right: var(--spacing-variable-2xl);
  overflow-x: auto;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  text-align: left;
  padding-inline-start: 0;
  white-space: nowrap;
  border-bottom: 1px solid var(--border-primary-light);
}


.doctor-profile-tabs-container::-webkit-scrollbar {
  display: none;
}

.doctor-profile-tab {
  display: inline;
  padding: var(--spacing-static-xs) var(--spacing-static-sm);
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-xs);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  text-align: center;
  color: var(--primary-80);
  opacity: 0.7;
  white-space: nowrap;
  flex-shrink: 0;
  transition: opacity 0.2s ease, border-color 0.2s ease;
}

.doctor-profile-tab:hover {
  opacity: 1;
}

.doctor-profile-tab.active {
  opacity: 1;
  border-bottom-color: var(--primary-60);
}

/* Doctor Profile Tab Content */

.doctor-profile-content {
  max-width: var(--max-width-content-wrap);
}

.doctor-profile-tab-panel {
  display: none;
  width: 100%;
}

.doctor-profile-tab-panel.active {
  display: block;
}

.doctor-profile-tab-panel p {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-sm);
  font-weight: 400;
  line-height: 1.5;
  color: var(--primary-80);
}




.single-doctor-profile .content {
  max-width: var(--max-width-content-wrap);
}

.doctor-content-sidebar {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1 0 0;
}

.doctor-locations-wrap,
.doctor-location-map-wrap {
  width: 100%;
}

.doctor-locations-wrap .doctor-location {
  display: flex;
  margin-bottom: var(--spacing-static-lg);
  flex-direction: column;
  align-items: flex-start;
  align-self: stretch;
  background-color: var(--surface-secondary-light)
}

.doctor-locations-wrap .doctor-location .doctor-address {
  color: var(--text-primary-main);
  font-family: var(--typography-body-md-family);
  font-size: var(--typography-body-md-size);
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}




.doctor-locations-wrap .doctor-location .doctor-location-address-wrap,
.doctor-locations-wrap .doctor-location .doctor-contact-btn-wrap {
  padding: var(--spacing-static-sm) var(--spacing-static-sm) var(--spacing-static-md) var(--spacing-static-sm);
}

.doctor-locations-wrap .doctor-location .doctor-location-address-wrap + .doctor-contact-btn-wrap {
  padding-top: 0;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-static-sm);
  align-items: stretch;
  width: 100%;
}

.doctor-locations-wrap .doctor-contact-btn-wrap .btn {
  color: var(--text-secondary-main);
  font-size: var(--typography-nav-md-size);
  font-weight: 500;
  border-radius: var(--button-radius);
  border: 1px solid var(--border-secondary-soft);
  background: var(--surface-base-light);
  text-align: center;
}


.doctor-profile-tab-panel .doctor-reviews-list {
  margin: 0;
  padding: 0;
}

.doctor-profile-tab-panel .doctor-reviews-list .doctor-review-item {
  list-style-type: none;
}

.content #tab-reviews blockquote p {
  font-size: 1.125em;
}


.video-container {
  position: relative;
  padding-top: 30px;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}

.video-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#tab-videos .video-thumbs {
  margin: 1rem 0;
  text-align: center
}

#tab-videos .video-thumbs .thumb img {
  width: 17%;
  max-width: 100px;
  height: auto
}

#tab-videos .video-desc {
  display: none
}

#tab-videos .video-desc.video-desc-1 {
  display: block
}

#tab-videos .video-thumbs .thumb {
  margin: 0 2% 0 0
}

#tab-videos .video-thumbs .thumb:last-of-type {
  margin: 0
}




/* Doctor Gallery */


/* Doctor Gallery Age Gate */

.doctor-gallery-age-gate {
  position: relative;
}

.doctor-gallery-age-gate.age-gate-active::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--surface-secondary-soft);
  backdrop-filter: blur(20px);
  z-index: 10;
}

.doctor-gallery-age-gate.age-gate-active .doctor-gallery-list,
.doctor-gallery-age-gate.age-gate-active .doctor-tab-pagination {
  filter: blur(10px);
  pointer-events: none;
  user-select: none;
}

.doctor-gallery-age-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 20;
  background-color: var(--surface-primary-main);
  padding: var(--spacing-variable-lg);
  border-radius: var(--scale-radius-md);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
  max-width: 400px;
  width: 90%;
  text-align: center;
}

.doctor-gallery-age-modal-content p {
  margin-bottom: var(--spacing-variable-md);
  color: var(--text-primary-main);
  line-height: 1.5;
}

.doctor-gallery-age-modal .btn {
  min-width: 120px;
}


.doctor-gallery-list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-variable-lg);
  list-style: none;
  padding: 0;
  margin: 0;
}

.doctor-gallery-list .doctor-gallery-item {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: calc(50% - (var(--spacing-variable-lg) / 2));
  max-width: calc(50% - (var(--spacing-variable-lg) / 2));
}

.doctor-gallery-list .doctor-gallery-link {
  display: block;
  text-align: center;
  text-decoration: none;
  color: var(--text-secondary-main);
  background-color: var(--surface-secondary-light);
}

.doctor-gallery-list .doctor-gallery-img {
  display: block;
  line-height: 1;
}

.doctor-gallery-list .doctor-gallery-details {
  display: block;
  padding: var(--spacing-static-2xs);
}

.doctor-gallery-list .doctor-gallery-procedure,
.doctor-gallery-list .doctor-gallery-title {
  display: block;
}

.doctor-gallery-list .doctor-gallery-procedure {
  font-weight: 500;
}


.doctor-gallery-list .doctor-gallery-title {
  font-size: var(--typography-body-sm-size);
}

.doctor-tab-page-ellipsis {
  padding: var(--spacing-static-2xs);
  color: var(--text-secondary-main);
}

.doctor-profile-tab-panel .doctor-tab-pagination {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: var(--spacing-static-2xs);
}

.doctor-profile-tab-panel .doctor-tab-pagination .doctor-tab-page-link {
  display: inline-block;
  padding: var(--spacing-static-2xs);
  color: var(--text-secondary-main);
}

.doctor-profile-tab-panel .doctor-tab-pagination .doctor-tab-page-link.next:hover,
.doctor-profile-tab-panel .doctor-tab-pagination .doctor-tab-page-link.prev:hover {
  text-decoration: underline;
}

.doctor-profile-tab-panel .doctor-tab-pagination .doctor-tab-page-numbers {
  display: inline-flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--spacing-static-3xs);
}

.doctor-profile-tab-panel .doctor-tab-pagination .doctor-tab-page-numbers .doctor-tab-page-link {
  border: 1px solid var(--surface-secondary-soft);
  background-color: var(--surface-secondary-light);
  text-decoration: none;
}

.doctor-profile-tab-panel .doctor-tab-pagination .doctor-tab-page-link.current,
.doctor-profile-tab-panel .doctor-tab-pagination .doctor-tab-page-numbers .doctor-tab-page-link:hover  {
  border-color: var(--surface-secondary-accent);
}




/* Doctor Gallery Patient Detail */

.doctor-gallery-detail .doctor-gallery-detail-header {
  margin-bottom: var(--spacing-static-lg);
}

.doctor-gallery-detail .doctor-gallery-detail-images {
  color: var(--text-secondary-main);
  background-color: var(--surface-secondary-light);
}

.doctor-gallery-detail .doctor-gallery-detail-main-image {
  margin-bottom: 0;
}

.doctor-gallery-detail .doctor-gallery-detail-meta {
  display: flex;
  gap: var(--spacing-variable-sm);
  padding: var(--spacing-static-sm);
  justify-content: space-between;
  align-items: flex-start;
}

.doctor-gallery-detail .doctor-gallery-detail-images .doctor-gallery-detail-title-and-author {
  max-width: calc(50% - (var(--spacing-variable-sm) / 2));
}

.doctor-gallery-detail .doctor-gallery-detail-images .doctor-gallery-detail-procedure {
  margin: 0;
}

.doctor-gallery-detail .doctor-gallery-detail-images .doctor-gallery-detail-title {
  font-size: var(--typography-body-sm-size);
  text-transform: uppercase;
}

.doctor-gallery-detail .doctor-gallery-detail-images .doctor-gallery-detail-author {
  color: var(--text-primary-accent);
  font-family: var(--typography-body-sm-family);
  font-size: var(--typography-body-sm-size);
  margin-bottom: 0;
}


.doctor-gallery-detail .doctor-gallery-detail-images .doctor-gallery-detail-thumbnails {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: var(--spacing-static-2xs);
  max-width: calc(50% - (var(--spacing-variable-sm) / 2));
}

.doctor-gallery-detail .doctor-gallery-detail-images .doctor-gallery-detail-thumbnail {
  display: inline-block;
  padding: 0;
  line-height: 0;
  border: none;
  max-width: calc(25% - (var(--spacing-static-2xs) / 3));
  border: 1px solid transparent;
  background: transparent;
}

.doctor-gallery-detail .doctor-gallery-detail-images .doctor-gallery-detail-thumbnail:hover {
  background: transparent;
  border: 1px solid var(--surface-secondary-accent);
}

.doctor-gallery-detail .doctor-gallery-detail-images .doctor-gallery-detail-thumbnail.active {
  padding: 1px;
  border: 1px solid var(--surface-secondary-accent);
}

.doctor-gallery-detail .patient-procedures-wrap {
  background-color: var(--surface-secondary-soft);
  padding: var(--spacing-static-xs);
}

.doctor-gallery-detail .procedure-label {
  color: var(--text-secondary-main);
  font-size: var(--font-size-xs);
  font-weight: 500;
  text-transform: uppercase;
}

.doctor-gallery-detail .patient-procedures {
  display: inline-flex;
  align-items: flex-start;
  align-content: flex-start;
  gap: 8px;
  align-self: stretch;
  flex-wrap: wrap;
  margin: 0;
  padding-bottom: 0;
}

.doctor-gallery-detail .patient-procedure {
  display: inline-block;
  width: auto;
  padding: var(--spacing-static-2xs) var(--spacing-static-xs);
  margin: 0;
  color: var(--text-secondary-main);
  text-align: center;
  font-family: var(--typography-nav-md-family);
  font-size: var(--typography-nav-md-size);
  line-height: 1; /* 16.8px */
  border-radius: var(--scale-radius-full);
  background: var(--surface-secondary-light);
}

.doctor-gallery-detail .doctor-gallery-detail-description {
  margin-top: var(--spacing-static-lg);
}



/* Contact Form - Doctor Profile */

.doctor-contact-section {
  background: var(--surface-secondary-light);
  padding: var(--spacing-variable-3xl) var(--spacing-variable-xl);
  grid-area: footer-feature-extra;
}

.doctor-contact-inner {
  max-width: var(--max-width-content-main);
  margin: 0 auto;
}

.doctor-contact-form-wrapper {
  background: transparent;
  padding: 0;
  border: none;
  margin: 0;
}

.doctor-contact-form-wrapper .widget-title {
  color: var(--text-secondary-main);
  text-align: center;
  font-family: var(--typography-heading-1-family);
  font-size: var(--typography-heading-1-size);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -0.03rem;
  border: none;
  margin-bottom: var(--typography-heading-1-margin-bottom);
}

.gform_wrapper.gform-theme.gform-theme--foundation form .gform-footer.gform_footer {
  justify-content: center;
}

.gform_wrapper.gform-theme.gform-theme--foundation form .gform-footer.gform_footer input.button.gform_button {
  border-radius: var(--button-radius);
  background: var(--surface-tertiary-accent);
  font-size: var(--typography-ui-label-size);
  padding: var(--button-padding-y) var(--button-padding-x);
}




/* Doctor Form Container */

.surgeon-search-form {
  font-family: var(--font-brand-secondary);
  background-color: var(--secondary-10);
  border: 1px solid var(--secondary-40);
  border-radius: 8px;
  padding: var(--spacing-static-md) var(--spacing-static-sm) var(--spacing-static-lg);
}


/* Form Sections */

.surgeon-search-form .form-section {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-static-sm);
  padding: var(--spacing-static-sm) 0 var(--spacing-static-lg);
  border: none;
  margin: 0;
}

.surgeon-search-form .form-section:first-child,
.surgeon-search-form .form-section:first-child > legend {
  padding-top: 0;
}

.surgeon-search-form .form-section.bordered {
  padding-top: 0;
  border-top: 1px solid var(--secondary-40);
}


/* Section Heading */

.surgeon-search-form .form-section .heading {
  display: flex;
  align-items: center;
  gap: var(--spacing-static-sm);
  padding: var(--spacing-static-md) 0 0;
  margin: 0;
  float: left;
  width: 100%;
}

.surgeon-search-form .form-section .heading .icon {
  width: var(--spacing-static-md);
  height: var(--spacing-static-md);
  flex-shrink: 0;
  color: var(--secondary-60);
}

.surgeon-search-form .form-section .heading .text {
  display: flex;
  gap: var(--spacing-static-2xs);
  font-family: var(--font-brand-secondary);
  font-size: var(--typography-ui-label-size);
  font-weight: 500;
  line-height: 1.3;
  letter-spacing: 0.01em;
  text-transform: uppercase;
  color: var(--secondary-80);
  margin: 0;
}

.surgeon-search-form .form-section .heading .text:before {
  width: 24px;
  height: 24px;
  filter: invert(81%) sepia(4%) saturate(5821%) hue-rotate(152deg) brightness(86%) contrast(86%);
}

.surgeon-search-form .form-section .heading .text:nth-child(1):before {
  content: var(--icon-marker-pin-24);
}

.surgeon-search-form .form-section:nth-child(2) .heading .text:before {
  content: var(--icon-certificate-24);
}


/* Input Row (side by side inputs) */

.surgeon-search-form .form-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-static-md);
}


/* Form Field */

.surgeon-search-form .form-field {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  min-width: var(--max-width-columns-2);
}

.surgeon-search-form .form-field.full {
  flex: 1 1 100%;
}

.surgeon-search-form .form-field .label {
  font-family: var(--font-brand-secondary);
  font-size: var(--typography-ui-label-size);
  font-weight: 500;
  line-height: 1.2;
  color: var(--primary-80);
  padding-bottom: 8px;
}

.surgeon-search-form .form-field .input,
.surgeon-search-form .form-field .select {
  font-family: var(--font-brand-secondary);
  font-size: var(--typography-ui-label-size);
  font-weight: 400;
  line-height: 1.5;
  color: (var(--text-primary-main));
  background-color: var(--surface-utility-white);
  border: 1px solid var(--border-primary-light);
  border-radius: var(--scale-radius-xs);
  padding: var(--spacing-static-xs);
  width: 100%;
  box-sizing: border-box;
}

.surgeon-search-form .form-field input::placeholder,
.surgeon-search-form .form-field select:invalid {
  color: var(--gray-40);
}

.surgeon-search-form .form-field select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: var(--icon-chevron-down-16);
  background-repeat: no-repeat;
  background-position: right var(--spacing-static-xs) center;
  background-size: 16px;
  padding-right: calc(var(--spacing-static-xs) + 24px);
  cursor: pointer;
}

.surgeon-search-form .form-field .input:focus,
.surgeon-search-form .form-field .select:focus {
  outline: none;
  border-color: var(--primary-60);
}


/* Location Options - Mutually Exclusive */

.surgeon-search-form .location-option {
  transition: opacity 0.2s ease;
}

.surgeon-search-form .location-option.faded {
  opacity: 0.4;
  pointer-events: none;
}

.surgeon-search-form .location-option.faded .input,
.surgeon-search-form .location-option.faded .select,
.surgeon-search-form .location-option.faded.form-field .input {
  background-color: var(--gray-10);
}


/* Submit Button */

.surgeon-search-form .form-submit {
  width: 100%;
  border-radius: var(--button-radius);
  box-sizing: border-box;
}

.surgeon-search-form .form-submit:hover {
  background-color: var(--tertiary-70);
}

.surgeon-search-form .form-submit .icon {
  width: var(--scale-unit-16);
  height: var(--scale-unit-16);
  flex-shrink: 0;
}


/* Full width YouTube Embeds */

.wp-block-embed-youtube .wp-block-embed__wrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
}

.wp-block-embed-youtube .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/* Infographic code embed */

.embed-wrapper .heading {
  margin-bottom: var(--spacing-variable-sm)
}
.embed-wrapper .embed {
  background: #f5f5f5;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  padding: 1rem;
}

.embed-wrapper .embed textarea {
  width: 100%;
  min-height: 120px;
  padding: 1rem;
  background: #ffffff;
  border: 1px solid #d0d0d0;
  border-radius: 4px;
  color: #333333;
  font-family: monospace;
  font-size: 0.875rem;
  line-height: 1.6;
  resize: vertical;
  white-space: pre-line;
  overflow-x: auto;
}

.embed-wrapper .embed textarea:focus {
  outline: none;
  border-color: #0078d4;
  box-shadow: 0 0 0 2px rgba(0, 120, 212, 0.25);
}






/* Procedure Learning Center */


/* View Containers */
.procedure-view {
  display: none;
}

.procedure-view.active {
  display: block;
}

/* Alphabetical List View */
.procedure-az-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

ul li.procedure-az-item {
  padding: var(--spacing-static-xs) 0;
  margin-bottom: 0;
}

.procedure-az-title {
  display: block;
  font-family: var(--typography-body-lg-family);
  font-size: var(--typography-body-lg-size);
  text-decoration: none;
  margin-bottom: var(--spacing-static-3xs);
}

.procedure-az-title:hover {
  text-decoration: underline;
}

.procedure-az-title::after {
  content: var(--icon-arrow-right-16);
  display: inline-block;
  margin-left: var(--spacing-static-3xs);
  filter: invert(42%) sepia(75%) saturate(454%) hue-rotate(142deg) brightness(86%) contrast(84%);
}

a.procedure-az-title,
a.procedure-az-title:visited {
  color: var(--text-secondary-accent);
}

.procedure-az-desc {
  display: block;
  font-family: var(--typography-body-sm-family);
  font-size: var(--typography-body-sm-size);
  color: var(--text-primary-main);
}


.content .procedure-cards {
  display: grid;
  row-gap: var(--spacing-static-md);
  column-gap: var(--spacing-static-md);
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin: var(--spacing-variable-lg) 0 var(--spacing-static-2xl) 0;
  clear: both;
}

.content .procedure-cards .procedure-card {
  display: flex;
  flex-direction: column;
  background: var(--surface-base-light);
  box-shadow: 0 17px 5px 0 rgba(0, 0, 0, 0.00), 0 11px 4px 0 rgba(0, 0, 0, 0.01), 0 6px 4px 0 rgba(0, 0, 0, 0.04), 0 3px 3px 0 rgba(0, 0, 0, 0.07), 0 1px 2px 0 rgba(0, 0, 0, 0.08);
  transition: all 0.2s ease;
}

.content .procedure-cards .procedure-card:hover {
  transform: scale(1.03);
  box-shadow: 0 28px 8px 0 rgba(0, 0, 0, 0.00), 0 18px 7px 0 rgba(0, 0, 0, 0.01), 0 10px 6px 0 rgba(0, 0, 0, 0.04), 0 5px 5px 0 rgba(0, 0, 0, 0.07), 0 1px 3px 0 rgba(0, 0, 0, 0.08);
}

.content .procedure-cards .card-title {
  display: block;
  width: 100%;
  margin: 0;
  padding: var(--spacing-static-xs) var(--spacing-static-sm);
  font-family: var(--typography-heading-4-family);
  font-size: var(--typography-heading-4-size);
  font-style: normal;
  text-transform: none;
  background-color: var(--surface-secondary-light);
  letter-spacing: 0;
}

.content .procedure-cards .card-title .link {
  color: var(--text-secondary-main);
  text-decoration: none;
}

.content .procedure-cards .card-title .link:hover {
  text-decoration: underline;
}

.content .procedure-cards .card-content {
  display: flex;
  padding: var(--spacing-static-xs) var(--spacing-static-sm) var(--spacing-static-sm) var(--spacing-static-sm);
  flex-direction: column;
  justify-content: space-between;
  flex: 1 0 0;
  align-self: stretch;
  color: var(--text-secondary-main);
}

.content .procedure-cards .card-desc {
  font-family: var(--typography-body-sm-family);
  font-size: var(--typography-body-sm-size);
  margin-bottom: 0;
}

.content .procedure-cards .card-links {
  margin: var(--spacing-static-2xs) 0 0;
  padding: 0;
}

.content .procedure-cards .card-links .card-link {
  margin: var(--spacing-static-2xs) 0 0;
  padding: 0;
  list-style-type: none;
  font-family: var(--typography-body-sm-family);
  font-size: var(--typography-body-sm-size);
  font-weight: 600;
  line-height: 1.3;
}

.content .procedure-cards .card-link .link {
  display: inline;
  color: var(--text-secondary-accent);
  text-decoration: none;
}

.content .procedure-cards .card-link .link:hover {
  text-decoration: underline;
}

.content .procedure-cards .card-link .link:after {
  content: var(--icon-arrow-right-16);
  filter: invert(42%) sepia(75%) saturate(454%) hue-rotate(142deg) brightness(86%) contrast(84%);
  display: inline-block;
  margin-left: 2px;
  vertical-align: middle;
}

.procedure-learning-center-section figure {
    width: clamp(5rem, -3.75rem + 35vw, 9.375rem);
}

.procedure-learning-center-section figure img {
    border-radius: var(--scale-radius-sm);
}

.procedure-learning-center-section figure.alignright {
    float: right;
    margin: 0.5rem 0 2rem 2rem;
    clear: both;
}

.procedure-learning-center-section h2 {
    margin-top: 0;
    color: var(--text-primary-accent);
}







/* Procedure Detail Page */

.header-feature-procedure {
  background-image: url('../img/bg-abcs-logomark-header-feature.svg');
  background-position: top right;
  background-repeat: no-repeat;
  background-size: cover;
}

.header-feature-procedure .header-feature-inner {
  display: flex;
  flex-direction: column;
  max-width: var(--max-width-content-wrap);
  gap: var(--spacing-variable-md);
  flex: 1 0 0;
}


.header-feature-procedure .procedure-info {
  display: flex;
  max-width: var(--max-width-content-wrap);
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  flex: 1 0 0;
  text-align: left;
}

.header-feature-procedure .quick-facts-wrap .heading,
.header-feature-procedure .procedure-cat-wrap {
  font-family: var(--typography-heading-6-family);
  font-size: var(--typography-heading-6-size);
  font-style: normal;
  font-weight: 600;
  line-height: 110%;
  letter-spacing: 0.01556rem;
  text-transform: uppercase;
}

.header-feature-procedure .procedure-cat-wrap {
  margin-bottom: var(--spacing-static-xs);
  color: var(--text-primary-accent);
}

.header-feature-procedure .header-feature-inner .page-title {
  text-align: left;
}

.header-feature-procedure .procedure-cta {
  display: flex;
  max-width: 100%;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  gap: var(--spacing-static-2xs);
  flex: 1 0 0;
  align-self: stretch;
}


.header-feature-procedure .quick-facts-wrap .heading {
  color: var(--text-secondary-accent);
  display: block;
}

.header-feature-procedure .quick-facts-wrap {
  padding-top: var(--spacing-static-md);
  border-top: 1px solid var(--border-primary-light);
  margin-top: var(--spacing-variable-2xs);
}

.header-feature-procedure .quick-facts-wrap .quick-facts {
  display: inline-grid;
  column-gap: var(--spacing-variable-md);
  align-self: stretch;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin: var(--spacing-static-xs) 0 0;
  padding: 0;
  max-width: var(--max-width-content-wrap);
}

.header-feature-procedure .quick-facts-wrap .quick-fact {
  list-style-type: none;
  display: flex;
  padding: var(--spacing-static-2xs) var(--spacing-static-none);
  align-items: flex-start;
  gap: var(--spacing-static-2xs);
  flex: 1 0 0;
  color: var(--text-secondary-main);
}


.header-feature-procedure .quick-facts-wrap .quick-fact:before {
  width: 20px;
  height: 20px;
  filter: invert(36%) sepia(92%) saturate(332%) hue-rotate(142deg) brightness(100%) contrast(94%);
}

.header-feature-procedure .quick-facts-wrap .quick-fact.anesthesia:before {
  content: var(--icon-clock-snooze-20);
}
.header-feature-procedure .quick-facts-wrap .quick-fact.surgical-time:before {
  content: var(--icon-hourglass-20);
}

.header-feature-procedure .quick-facts-wrap .quick-fact.back-to-work:before {
  content: var(--icon-clock-check-20);
}

.header-feature-procedure .quick-facts-wrap .quick-fact.full-recovery:before {
  content: var(--icon-face-content-20);
}

.header-feature-procedure .quick-facts-wrap .quick-fact.price-range:before {
  content: var(--icon-piggy-bank-20);
}

.header-feature-procedure .quick-facts-wrap .quick-fact-text {
  line-height: 1.4;
  margin: 0;
}

.header-feature-procedure .procedure-cta .cta-buttons {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: var(--spacing-static-sm);
  align-self: stretch;
  text-align: center;
  margin: 0;
}

.header-feature-procedure .procedure-cta .cta-buttons .btn {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}








/* Call Out Box + Procedure Insights */

.procedure-insights-wrap {
  border-top: 6px solid var(--text-secondary-accent);
  background: var(--surface-secondary-light);
  padding: var(--spacing-variable-lg);
  margin-bottom: var(--spacing-static-md);
  color: var(--text-secondary-main);
}

.procedure-insights-wrap .heading {
  font-family: var(--typography-heading-3-family);
  font-size: var(--typography-heading-3-size);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.01333rem;
}

ul.procedure-insights {
  margin: var(--spacing-variable-md) 0 0;
  padding-left: var(--spacing-variable-md);
}

li.procedure-insight p {
  margin: 0;
}















/* Footer Feature */

.footer-feature-extra {
  grid-area: footer-feature-extra;
}

.footer-feature.feature-dark-bg {
  background: linear-gradient(180deg, var(--primary-70) 0%, var(--primary-80) 100%), var(--primary-80);
}





/* Footer Feature - Related Features */


.footer-feature-procedures {
  color: var(--text-primary-inverse-main);
  background: linear-gradient(180deg, #595284 0%, #444064 100%), var(--border-primary-inverse);
  padding: var(--spacing-variable-2xl) var(--spacing-variable-xl);
}


.footer-feature-procedures .footer-feature-content {
  display: flex;
  gap: var(--spacing-variable-2xl);
  max-width: var(--max-width-content-wrap);
  margin-left: auto;
  margin-right: auto;
  flex-wrap: wrap;
}

.footer-feature-procedures .footer-feature-content-section {
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0;
  text-align: left;
  min-width: var(--max-width-content-sidebar);
}


.footer-feature.footer-feature-procedures .heading {
  display: block;
  margin-bottom: var(--spacing-variable-sm);
  color: var(--text-primary-inverse-main);
  font-family: var(--typography-heading-3-family);
  font-size: var(--typography-heading-3-size);
  font-weight: 500;
  text-align: left;
}

.footer-feature-procedures .list-obj {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  list-style: none;
  gap:  var(--scale-unit-08);
}

.footer-feature-procedures .list-obj .link {
  text-decoration: none;
  color: var(--text-primary-inverse-accent);
}

.footer-feature-procedures .list-obj .learn-more-item a.link:hover,
.footer-feature-procedures .list-obj a.link:hover :not(.related-procedure-desc) {
  text-decoration: underline;
}

.footer-feature-procedures .list-obj .related-procedure-title,
.footer-feature-procedures .list-obj .learn-more-item {
  display: block;
  color: var(--text-primary-inverse-accent);
  font-family: var(--typography-body-lg-family);
  font-size: var(--typography-body-lg-size);
  font-style: normal;
  font-weight: 400;
  line-height: 1.4;
  padding: var(--spacing-static-2xs) 0 var(--spacing-static-3xs) 0;
}

.footer-feature-procedures .list-obj .related-procedure-desc {
  display: block;
  font-style: normal;
  font-size: var(--typography-body-sm-size);
}



.footer-feature-procedures .list-obj .related-procedure-title::after,
.footer-feature-procedures .list-obj .learn-more-item .link::after {
  display: inline-block;
  white-space: nowrap;
  margin-left: var(--spacing-static-2xs);
  content: var(--icon-arrow-right-16);
  filter: brightness(0) saturate(100%) invert(100%) sepia(1%) saturate(1387%) hue-rotate(94deg) brightness(100%) contrast(97%);
}







/* Footer Feature - Stay Current */

.footer-feature-default {
  padding: 0;
}

.footer-feature-default .feature-header {
  display: flex;
  max-width: calc(var(--max-width-content-wrap) + var(--spacing-variable-xl));
  margin: 0 auto;
  padding: var(--spacing-variable-2xl) var(--spacing-variable-xl) var(--spacing-variable-2xl);
  justify-content: space-between;
  align-items: flex-start;
  align-content: flex-start;
  gap: var(--spacing-variable-md);
  align-self: stretch;
  flex-wrap: wrap;
}

.footer-feature-default .feature-header .heading {
  color: var(--primary-00);
  font-family: var(--typography-heading-1-family);
  font-size: var(--typography-heading-1-size);
  font-style: normal;
  font-weight: 400;
  line-height: 120%; /* 57.6px */
  letter-spacing: -0.48px;
}

.footer-feature-default .feature-header .follow-us {
  display: flex;
  padding: var(--button-padding-y) var(--button-padding-x);
  justify-content: center;
  align-items: center;
  gap: var(--button-spacing);
  color: var(--primary-00);
  text-decoration: none;
  border-radius: var(--button-radius);
  border: 1px solid var(--border-primary-light);
}


/* Footer Feature - Contact Form */

.footer-feature.footer-feature-contact-form {
  padding: var(--spacing-variable-3xl) var(--spacing-variable-xl);
}

.footer-feature.footer-feature-contact-form .footer-feature-inner {
  max-width: var(--max-width-content-main);
  margin: 0 auto;
}

.footer-feature .heading {
  display: block;
  color: var(--surface-primary-inverse);
  text-align: center;
  font-family: var(--typography-heading-1-family);
  font-size: var(--typography-heading-1-size);
  letter-spacing: -0.48px;
}

.footer-feature.footer-feature-contact-form .desc {
  color: var(--surface-primary-inverse);
  text-align: center;
  font-family: var(--typography-body-md-family);
  font-size: var(--typography-body-md-size);
  line-height: 1.5;
}


/* Footer Feature - Blog Updates */

.feature-section.footer-feature-blog-updates {
  background: var(--surface-secondary-light);
}

.feature-section.footer-feature-blog-updates .footer-feature-inner {
  max-width: var(--max-width-content-wrap);
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-variable-xl);
}

.footer-feature.footer-feature-blog-updates .heading {
  color: var(--text-secondary-main);
}

.footer-feature.footer-feature-blog-updates .awards-logos-wraps .heading {
  font-family: var(--typography-heading-5-family);
  font-size: var(--typography-heading-5-size);
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.01rem;
  text-transform: uppercase;
}

.footer-feature-blog-updates .blog-posts {
  display: flex;
  padding: 0;
  justify-content: center;
  align-items: flex-start;
  align-content: flex-start;
  gap: var(--spacing-variable-2xl);
  align-self: stretch;
  flex-wrap: wrap;
}

.footer-feature-blog-updates .blog-posts .blog-post {
  list-style-type: none;
  max-width: 536px;
  flex-grow: 1;
  flex-basis: calc(50% - 32px);
  min-width: var(--max-width-content-sidebar);
}

.footer-feature-blog-updates .blog-posts .blog-post .link {
  display: flex;
  align-items: center;
  gap: var(--spacing-variable-md);
  color: var(--text-secondary-main);
  text-decoration: none;
}

.footer-feature-blog-updates .blog-posts .blog-post .thumbnail-wrap {
  width: 64px;
  height: 64px;
  flex-shrink: 0;
  overflow: hidden;
  border-radius: var(--scale-radius-md);
}

.footer-feature-blog-updates .blog-posts .blog-post .thumbnail-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.footer-feature-blog-updates .blog-posts .blog-post .post-title {
  color: var(--text-secondary-main);
  font-family: var(--typography-heading-5-family);
  font-size: var(--typography-heading-5-size);
  font-weight: 500;
}

.footer-feature-blog-updates .awards-logos {
  column-gap: var(--spacing-variable-xl);
  row-gap: var(--spacing-variable-2xs);
  margin-top: var(--spacing-variable-md);
  margin-bottom: 0;
}

.footer-feature-blog-updates .awards-logos.logo-blocks .logo-block {
  width: auto;
  height: auto;
}

.footer-feature-blog-updates .awards-logos.logo-blocks .logo-block.cnn svg,
.footer-feature-blog-updates .awards-logos.logo-blocks .logo-block.today svg {
  max-width: 56px;
}

.footer-feature-blog-updates .awards-logos.logo-blocks .logo-block.nyt svg {
  max-width: 134px;
}

.footer-feature-blog-updates .awards-logos.logo-blocks .logo-block.today svg {
  max-width: 56px;
}

.footer-feature-blog-updates .awards-logos.logo-blocks .logo-block.msnbc svg,
.footer-feature-blog-updates .awards-logos.logo-blocks .logo-block.newsweek svg{
  max-width: 96px;
}

.footer-feature-blog-updates .btn-wrapper {
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
}





.content-footer-press-contact {
  background-color: var(--tertiary-10);
  border-top: 6px solid var(--tertiary-60);
}


.content-footer-press-contact .inner {
  display: flex;
  flex-direction: column;
  padding: var(--spacing-variable-lg);
  gap: 0 var(--spacing-variable-lg);
  max-width: 100%;
}  

.content-footer-press-contact .email-link {
  font-size: 4vw;
}

.content-footer-press-contact .heading {
  color: var(--text-tertiary-main);
  font-family: var(--font-brand-primary);
  font-size: var(--font-size-xl);
  font-style: normal;
  font-weight: 400;
  line-height: 125%; /* 40px */
  letter-spacing: -0.32px;
}


.content-footer-press-contact .contact-details {
  color: var(--text-tertiary-main);
  text-align: right;
  font-family: var(--typography-body-md-family);
  font-size: var(--typography-body-md-size);
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}


.content-footer-press-contact .press-contact-heading,
.content-footer-press-contact .press-contact-info {
  flex-basis: 50%;
}

.content-footer-press-contact .press-contact-info {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.content-footer-press-contact .contact-details .phone,
.content-footer-press-contact .contact-details .fax {
  display: block;
}

.content-footer-press-contact .contact-details .phone a {
  color: var(--text-tertiary-main);
}










/* Page Footer */

.page-footer {
  position: relative;
  background-color: var(--primary-80); /* #302D43 purple */
  padding: var(--spacing-variable-3xl) var(--spacing-variable-xl) 150px;
  z-index: 5;
}

.footer-inner {
  max-width: var(--max-width-page-inner);
  color: var(--text-primary-inverse-main);
  text-align: center;
  gap: var(--spacing-variable-2xl);
}


/* Logo */

.footer-inner .business-logo {
  width: 100%;
}

.page-footer .primary-logo {
  max-width: var(--max-width-columns-2);
  width: 100%;
  height: auto;
  margin-left: auto;
  margin-right: auto;
}


/* Member Directory CTA */

.member-directory-cta a {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-sm); /* 18px */
  font-weight: 500;
  letter-spacing: 0.01rem;
  text-transform: uppercase;
  color: var(--link-inverse-default);
  transition: opacity 0.2s ease;
}

.member-directory-cta a:hover {
  opacity: 0.8;
}


/* Social Icons */

.page-footer .social-media {
  display: flex;
  justify-content: center;
  gap: var(--spacing-static-xs);
}

.page-footer .social-links {
  display: flex;
  gap: var(--spacing-static-lg);
  list-style: none;
  padding: 0;
  margin: 0;
}

.page-footer .social-links .social-link {
  margin: 0;
}

.page-footer .social-links .social-link .link {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s ease;
}

.page-footer .social-links .social-link .link:hover {
  opacity: 0.7;
}

.page-footer .social-links .social-link .link svg {
  width: 24px;
  height: 24px;
  fill: #fff;
}


/* Fine Print */

.fine-print {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-static-md);
  align-items: center;
}

.footer-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--spacing-static-sm);
}

.footer-links a {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-xs); /* 14px */
  color: var(--text-primary-inverse-main);
  transition: opacity 0.2s ease;
}

.footer-links a:hover {
  opacity: 0.8;
}

.fine-print .copyright {
  font-family: var(--font-brand-secondary);
  font-size: var(--font-size-xs); /* 14px */
  color: #F9F9FB;
  margin: 0;
  line-height: 1.5;
  text-wrap-style: balance;
}


/* GenerateBlocks Containers */

.gb-outer {
  padding: var(--spacing-variable-2xl) var(--spacing-variable-xl);
}

.gb-inner {
  max-width: var(--max-width-content-wrap);
}


/* Linked Containers */

.container-linked > div {
  position: relative;
}

.container-linked > div a:before {
  cursor: pointer;
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
}


/* Pattern - Patient Safety Certification */

.pattern-patient-safety-certification .wp-block-button a {
  font-size: unset;
}


/* Pattern - What Sets ABCS Surgeons Apart */

.pattern-surgeon-accolades ul {
  padding-left: 1.75rem;
}


/* Pattern - References */

.pattern-references .kt-blocks-accordion-title {
  display: flex;
  align-items: center;
  gap: var(--spacing-static-2xs)
}

.pattern-references .kt-blocks-accordion-title:before {
  width: 20px;
  height: 20px;
  filter: invert(70%) sepia(93%) saturate(312%) hue-rotate(151deg) brightness(85%) contrast(87%);
  content: var(--icon-file-search-20);
}

.pattern-references .kt-accordion-panel-inner p,
.pattern-references .kt-accordion-panel-inner li {
  font-size: var(--typography-body-sm-size); 
}


/* Pattern - Call Out Box */

.call-out-box > :first-child {
  margin-top: 0;
}

.call-out-box > :last-child {
  margin-bottom: 0;
}

/* Pattern - Surgeons Join Us */

.pattern-join-us,
.pattern-join-us .wp-block-cr-faux-heading {
  color: var(--text-secondary-main)
}


/* Find a Surgeon Search Form */

.find-surgeon-form {
  text-align: center;
}

.find-surgeon-form .form-fields {
  display: flex;
  margin-bottom: var(--spacing-static-md);
  border-radius: var(--scale-radius-full);
  overflow: clip;
}

.find-surgeon-form .form-input {
  flex: 1;
  font-family: var(--font-brand-secondary);
  font-size: var(--typography-body-md-size);
  line-height: 1.5;
  color: var(--text-primary-main);
  background-color: var(--surface-utility-white);
  border: none;
  padding: 16px 20px;
  text-overflow: ellipsis;
}

.find-surgeon-form .form-input::placeholder {
  color: var(--primary-80);
  opacity: 0.6;
}

.find-surgeon-form .form-input:focus {
  outline: none;
}

.find-surgeon-form .form-fields:focus-within {
  box-shadow: 0 17px 5px 0 rgba(0, 0, 0, 0.00), 0 11px 4px 0 rgba(0, 0, 0, 0.01), 0 6px 4px 0 rgba(0, 0, 0, 0.04), 0 3px 3px 0 rgba(0, 0, 0, 0.07), 0 1px 2px 0 rgba(0, 0, 0, 0.08);
}

.find-surgeon-form .form-submit,
.surgeon-search-form .form-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-static-2xs);
  font-size: var(--typography-ui-label-size);
  font-weight: 500;
  line-height: 1.2;
  color: var(--text-tertiary-inverse-main);
  background-color: var(--surface-tertiary-accent);
  border: none;
  padding: var(--spacing-static-xs) var(--spacing-static-md);
  cursor: pointer;
}

.find-surgeon-form .form-submit:hover {
  background-color: var(--surface-tertiary-inverse);
}

.find-surgeon-form .form-submit::before,
.surgeon-search-form .form-submit::before {
  content: '';
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background-image: var(--search-icon);
  filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(2%) hue-rotate(193deg) brightness(104%) contrast(101%);
}



/* Homepage */

.home .page-body {
  background-image: none;
}


/* Home Hero */

.home-hero h1 sup {
  font-size: 0.25em;
  top: -2rem;
  left: 2px;
}

.text-dramatic {
  animation: grow 0.5s ease-out forwards;
}

@keyframes grow {
  from {
    transform: scale(0.96);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}


/* Home Audience Types */

.content .home-audience .wp-block-atbs-tabs {
  padding: var(--spacing-variable-2xl) var(--spacing-variable-xl);
  margin-top: 0!important;
  border: 0;
  transition: background 0.3s ease-in-out;
}

.content .home-audience .wp-block-atbs-tabs:has(ul > li:nth-child(1).active) {
  background: var(--surface-primary-light);

}

.content .home-audience .wp-block-atbs-tabs:has(ul > li:nth-child(2).active) {
  background: var(--surface-secondary-light);
}

.content .home-audience .atbs-tabs-accordion {
    display: none!important;
}


/* Toggles */

.content .home-audience .atbs__tab-labels,
.procedure-view-toggle {
  display: flex!important;
  flex-direction: row!important;
  width: fit-content;
  gap: 0!important;
  padding: 4px;
  border-radius: var(--button-radius);
  border: none;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: var(--spacing-variable-xl);
  background: var(--border-primary-light);
  position: relative;
  justify-content: center;
  transition: background 0.2s ease-in-out;
}

.procedure-view-toggle {
  width: 100%;
  max-width: var(--max-width-columns-4);
}

/* iOS-style sliding toggle indicator */
.content .home-audience .atbs__tab-labels::before {
  content: '';
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: 4px;
  width: calc(50% - 8px);
  background: var(--surface-base-light);
  border-radius: var(--button-radius);
  transition: transform 0.2s ease-in-out;
  z-index: 0;
}

/* Slide to second tab */
.content .home-audience .wp-block-atbs-tabs:has(ul > li:nth-child(2).active) .atbs__tab-labels::before {
  transform: translateX(calc(100% + 8px));
  border-color: var(--border-secondary-soft);
}

.content .home-audience  .atbs__tab-labels .atbs__tab-label {
  text-align: center;
}

.content .home-audience  .atbs__tab-labels .atbs__tab-label,
.procedure-view-toggle .view-toggle-btn {
  padding-left: calc(var(--spacing-variable-sm) + 2px);
  border-radius: var(--button-radius);
  background: transparent;
  font-size: var(--typography-ui-tab-size);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02rem;
  text-transform: uppercase;
  position: relative;
  z-index: 1;
  border: 1px solid transparent!important;
}

.content .home-audience  .atbs__tab-labels .atbs__tab-label.active {
  border: none!important;
}

.procedure-view-toggle .view-toggle-btn {
  flex: 1 1 50%;
  text-align: center;
  padding: var(--spacing-static-xs) var(--spacing-static-md);
}

/* iOS-style sliding toggle indicator for procedure view */
.procedure-view-toggle::before {
  content: '';
  position: absolute;
  top: 4px;
  bottom: 4px;
  left: 4px;
  width: calc(50% - 8px);
  background: var(--surface-base-light);
  border-radius: var(--button-radius);
  transition: transform 0.3s ease-in-out;
  z-index: 0;
}

/* Slide to second tab (A-Z view) */
.procedure-view-toggle:has(.view-toggle-btn[data-view="az"].active)::before {
  transform: translateX(calc(100% + 8px));
}

.content .home-audience  .atbs__tab-labels .atbs__tab-label:hover,
.procedure-view-toggle .view-toggle-btn:hover{
  text-decoration: underline;
  text-decoration-color: color-mix(in srgb, currentColor 25%, transparent);
}

.content .home-audience  .wp-block-atbs-tabs:has(ul > li:nth-child(2).active) .atbs__tab-labels {
  background: var(--border-secondary-light);
}

.content .home-audience .atbs__tab-content {
  max-width: var(--max-width-content-wrap);
  margin-left: auto;
  margin-right: auto;
}

.content .home-audience .wp-block-atbs-tabs .atbs__tab-panel {
  background: transparent;
  padding: 0;
}

.home-audience span.kt-blocks-accordion-title {
  font-weight: 500;
}


/* Home About */

.home-about ul.wp-block-list {
  padding-left: 3.1rem;
}

.home-about .wp-block-kadence-testimonials ul {
  padding: 0;
  margin: 0 auto;
  border-radius: 8px;
  overflow: hidden;
}

.home-about .kt-testimonial-grid-item {
  display: flex;
  margin: 0 auto;
}

.home-about .kt-testimonial-item-wrap {
  text-align: left;
}

.home-about .kt-testimonial-meta-wrap {
  justify-content: flex-start;
  margin-top: 1.5rem;
}


/* Home Procedures */

.home-procedures ul {
  padding-left: 1.25rem;
}

.home-procedures ul li a {
  color: currentColor;
}


/* ========================================================================
   ARCHIVE / SEARCH RESULTS
   ======================================================================== */

.search h1,
.archive h1:not(.page-title) {
  margin-bottom: var(--spacing-variable-xl);
}

.search h3,
.archive h2,
.page-template-page-all-posts-template h2 {
  margin-top: 0;
  margin-bottom: var(--spacing-variable-2xs);
}

.search h3 a,
.archive h2 a,
.page-template-page-all-posts-template h2 a {
  text-decoration: none;
  color: var(--text-primary-accent);
  font-weight: 500;
}

.search h3 a:hover,
.archive h2 a:hover,
.page-template-page-all-posts-template h2 a:hover {
  text-decoration: underline;
}

.page-template-page-all-posts-template .entry-meta {
  font-weight: bold;
  margin-bottom: var(--spacing-variable-sm);
}

.search article,
.archive .blog-article {
  margin-top: var(--spacing-variable-sm);
  margin-bottom: var(--spacing-variable-xl);
}

.search article footer {
  display: none;
}

a.page-numbers,
span.page-numbers.current {
  width: 2rem;
  height: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-family: var(--typography-body-sm-family);
  font-size: var(--typography-body-sm-size);
  font-style: normal;
  font-weight: 400;
  text-decoration: none;
}

.paginated-nav {
  display: flex;
  padding: var(--spacing-static-2xs);
  align-items: center;
  justify-content: center;
  gap: var(--spacing-static-2xs);
}

a.page-numbers {
  background: var(--surface-primary-light);
  color: var(--text-primary-main);
}

span.page-numbers.current {
    background: var(--surface-primary-accent);
    color: var(--text-primary-inverse-main);
}

.paginated-nav .next.page-numbers, 
.paginated-nav .prev.page-numbers {
  width: auto;
  background-color: transparent;
}



/* ========================================================================
   404 PAGE
   ======================================================================== */

.error404 h1 {
  margin-bottom: var(--spacing-variable-2xs)
}

.error404 ul.menu-404 {
  list-style: none;
  padding: 0;
  margin: 0;
}

.error404 .menu-wrap-404 a,
.error404 ul.menu-404 > .menu-item > .mobile-secondary-items > li > a{
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-color: rgba(89, 82, 132, 0.60);
  text-decoration-thickness: 1%;
  text-underline-offset: 16%;
}

/* Top Level - Title style */
.error404 ul.menu-404 > .menu-item,
.error404 ul.menu-404 > .menu-item > .mobile-secondary-items {
  list-style: none;
  margin-bottom: var(--spacing-static-md);
  padding: 0;
}

.error404 ul.menu-404 > .menu-item > a,
.error404 ul.menu-404 > .menu-item > .mobile-secondary-items > li > a {
  font-size: var(--typography-body-lg-size);
  font-weight: normal;
  color: var(--text-primary-accent);
  padding: 0;
  margin-bottom: var(--spacing-static-md);
}

/* Second Level - List items */
.error404 ul.menu-404 .menu-item ul.sub-menu:not(.mobile-secondary-items) {
  list-style: disc;
  padding-left: var(--spacing-static-lg);
  margin-top: var(--spacing-static-xs);
}

.error404 ul.menu-404 .menu-item ul.sub-menu:not(.mobile-secondary-items) .menu-item {
  margin-bottom: var(--spacing-static-2xs);
}

.error404 ul.menu-404 .menu-item ul.sub-menu:not(.mobile-secondary-items) .menu-item a {
  font-family: var(--typography-body-md-family);
  font-size: var(--typography-body-md-size);
  color: var(--text-primary-accent);
}

/* Third Level - Nested list items */
.error404 ul.menu-404 .menu-item ul.sub-menu .menu-item ul.sub-menu {
  margin-bottom: var(--spacing-static-sm);
  list-style: circle;
}
