/* [project]/src/components/common/cards/doctor-card.css [app-client] (css) */
.dv-doc-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.1rem;
  display: grid;
}

@media (max-width: 1100px) {
  .dv-doc-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .dv-doc-grid {
    grid-template-columns: 1fr;
  }
}

.dv-doc-grid--listing {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .85rem;
  display: grid;
}

@media (max-width: 1100px) {
  .dv-doc-grid--listing {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .dv-doc-grid--listing {
    grid-template-columns: 1fr;
  }
}

.dv-doc-grid--listing .dv-doc-card {
  padding-bottom: .65rem;
}

.dv-doc-grid--listing .dv-doc-body {
  padding: .7rem .85rem 0;
}

.dv-doc-grid--listing .dv-doc-name {
  font-size: 1rem;
  line-height: 1.25;
}

.dv-doc-grid--listing .dv-doc-tag {
  margin-top: .3rem;
}

.dv-doc-grid--listing .dv-doc-meta {
  gap: .22rem;
  margin-top: .28rem;
  padding: 0 .85rem;
}

.dv-doc-grid--listing .dv-doc-stats {
  -moz-column-gap: .35rem;
  gap: .12rem .35rem;
  margin: .22rem .85rem 0;
  padding: .28rem .4rem;
  font-size: .68rem;
}

.dv-doc-grid--listing .dv-doc-stats-cell {
  line-height: 1.15;
}

.dv-doc-grid--listing .dv-doc-stats-val {
  margin-top: .06rem;
  font-size: .76rem;
  line-height: 1.15;
}

.dv-doc-grid--listing .dv-doc-btn {
  -webkit-hyphens: auto;
  hyphens: auto;
  overflow-wrap: anywhere;
  width: calc(100% - 1.7rem);
  margin: .6rem .85rem 0;
  padding: .48rem .45rem;
  font-size: .8125rem;
  line-height: 1.35;
}

.dv-doc-grid--listing .dv-doc-photo-fallback {
  min-height: 110px;
  font-size: 1.1rem;
}

.dv-doc-card {
  background: var(--dv-white, #fff);
  border: 1px solid #e2e8f0f2;
  border-radius: 18px;
  padding-bottom: 1rem;
  transition: transform .2s, box-shadow .2s;
  overflow: hidden;
  box-shadow: 0 12px 28px #0f172a12;
}

.dv-doc-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 34px #0f172a1a;
}

.dv-doc-card:focus-visible {
  outline: 2px solid var(--dv-green, #10b981);
  outline-offset: 2px;
}

a.dv-doc-card {
  color: inherit;
}

.dv-doc-photo {
  aspect-ratio: 4 / 3;
  position: relative;
  overflow: hidden;
}

.dv-doc-status-badge {
  z-index: 2;
  letter-spacing: .04em;
  text-transform: uppercase;
  white-space: nowrap;
  text-overflow: ellipsis;
  border-radius: 999px;
  max-width: calc(100% - 1rem);
  padding: .22rem .55rem;
  font-size: .625rem;
  font-weight: 700;
  line-height: 1.2;
  position: absolute;
  top: .45rem;
  right: .45rem;
  overflow: hidden;
  box-shadow: 0 2px 8px #0f172a2e;
}

.dv-doc-status-badge[data-status="ONLINE"] {
  color: #fff;
  background: #059669;
}

.dv-doc-status-badge[data-status="OFFLINE"] {
  color: #fff;
  background: #dc2626;
}

.dv-doc-status-badge[data-status="BUSY"] {
  color: #422006;
  background: #eab308;
}

.dv-doc-photo img {
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.dv-doc-photo-fallback {
  color: #065f46;
  letter-spacing: .02em;
  background: linear-gradient(145deg, #d1fae5, #ecfdf5);
  place-items: center;
  width: 100%;
  height: 100%;
  min-height: 140px;
  font-size: 1.25rem;
  font-weight: 800;
  display: grid;
}

.dv-doc-body {
  padding: 1rem 1.1rem 0;
}

.dv-doc-name-row {
  justify-content: space-between;
  align-items: baseline;
  gap: .5rem;
  display: flex;
}

.dv-doc-name {
  color: #111827;
  flex: 1;
  min-width: 0;
  margin: 0;
  font-size: 1.1rem;
  font-weight: 800;
}

.dv-doc-name-row-icons {
  flex-shrink: 0;
  align-items: center;
  gap: .35rem;
  display: inline-flex;
}

.dv-doc-rating-inline {
  color: #059669;
  font-variant-numeric: tabular-nums;
  flex-shrink: 0;
  font-size: .8125rem;
  font-weight: 600;
}

.dv-doc-tag {
  text-transform: lowercase;
  color: var(--dv-green, #10b981);
  margin-top: .5rem;
  font-size: .78rem;
  font-weight: 700;
  display: inline-block;
}

.dv-doc-meta {
  flex-direction: column;
  gap: .35rem;
  margin-top: .45rem;
  padding: 0 1.1rem;
  display: flex;
}

.dv-doc-meta-line {
  color: #64748b;
  margin: 0;
  font-size: .8125rem;
  line-height: 1.45;
}

.dv-doc-meta-line--fee {
  color: #047857;
  font-weight: 700;
}

.dv-doc-bio {
  color: #64748b;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  margin: 0;
  font-size: .8125rem;
  line-height: 1.45;
  display: -webkit-box;
  overflow: hidden;
}

.dv-doc-stats {
  color: #64748b;
  background: #ecfdf5a6;
  border: 1px solid #10b98126;
  border-radius: 12px;
  grid-template-columns: 1fr 1fr;
  gap: .35rem;
  margin: .35rem 1.1rem 0;
  padding: .5rem .65rem;
  font-size: .72rem;
  display: grid;
}

.dv-doc-stats-cell {
  text-align: center;
}

.dv-doc-stats-val {
  color: #111827;
  font-variant-numeric: tabular-nums;
  margin-top: .2rem;
  font-size: .84rem;
  font-weight: 700;
  display: block;
}

.dv-doc-btn {
  background: linear-gradient(135deg, #059669, var(--dv-green, #10b981));
  color: #fff;
  text-align: center;
  cursor: pointer;
  border: none;
  border-radius: 12px;
  width: calc(100% - 2.2rem);
  margin: 1rem 1.1rem 0;
  padding: .65rem;
  font-size: .95rem;
  font-weight: 700;
  text-decoration: none;
  transition: opacity .2s, transform .15s;
  display: block;
}

.dv-doc-btn:hover {
  opacity: .95;
}

.dv-doc-btn:focus-visible {
  outline: 2px solid var(--dv-green, #10b981);
  outline-offset: 2px;
}

@media (max-width: 767px) {
  .dv-doc-grid {
    gap: .65rem;
  }

  .dv-doc-grid--listing {
    gap: .42rem;
  }

  .dv-doc-card {
    border-radius: 14px;
    padding-bottom: .65rem;
    box-shadow: 0 8px 20px #0f172a0f;
  }

  .dv-doc-photo {
    aspect-ratio: 16 / 10;
  }

  .dv-doc-photo-fallback {
    min-height: 92px;
    font-size: 1rem;
  }

  .dv-doc-status-badge {
    padding: .16rem .42rem;
    font-size: .5625rem;
    top: .32rem;
    right: .32rem;
  }

  .dv-doc-body {
    padding: .65rem .75rem 0;
  }

  .dv-doc-name {
    font-size: .98rem;
    line-height: 1.2;
  }

  .dv-doc-rating-inline {
    font-size: .75rem;
  }

  .dv-doc-tag {
    margin-top: .28rem;
    font-size: .74rem;
  }

  .dv-doc-meta {
    gap: .22rem;
    margin-top: .28rem;
    padding: 0 .75rem;
  }

  .dv-doc-stats {
    border-radius: 10px;
    gap: .22rem;
    margin: .22rem .75rem 0;
    padding: .38rem .45rem;
    font-size: .66rem;
  }

  .dv-doc-stats-val {
    margin-top: .1rem;
    font-size: .78rem;
  }

  .dv-doc-btn {
    border-radius: 10px;
    width: calc(100% - 1.5rem);
    margin: .55rem .75rem 0;
    padding: .52rem .5rem;
    font-size: .8125rem;
    line-height: 1.3;
  }

  .dv-doc-grid--listing .dv-doc-card {
    padding-bottom: .48rem;
  }

  .dv-doc-grid--listing .dv-doc-body {
    padding: .52rem .65rem 0;
  }

  .dv-doc-grid--listing .dv-doc-name {
    font-size: .93rem;
  }

  .dv-doc-grid--listing .dv-doc-tag {
    margin-top: .22rem;
    font-size: .7rem;
  }

  .dv-doc-grid--listing .dv-doc-meta {
    gap: .18rem;
    margin-top: .22rem;
    padding: 0 .65rem;
  }

  .dv-doc-grid--listing .dv-doc-stats {
    gap: .08rem .22rem;
    margin: .18rem .65rem 0;
    padding: .24rem .32rem;
    font-size: .62rem;
  }

  .dv-doc-grid--listing .dv-doc-stats-val {
    margin-top: .04rem;
    font-size: .72rem;
  }

  .dv-doc-grid--listing .dv-doc-btn {
    width: calc(100% - 1.3rem);
    margin: .48rem .65rem 0;
    padding: .44rem .4rem;
    font-size: .78rem;
    line-height: 1.32;
  }

  .dv-doc-grid--listing .dv-doc-photo-fallback {
    min-height: 88px;
    font-size: 1rem;
  }
}

/* [project]/src/components/common/public/docivama-public-chrome.css [app-client] (css) */
.dv-root {
  --dv-header-height: 70px;
  --dv-green: #10b981;
  --dv-green-dark: #047857;
  --dv-green-soft: #d1fae5;
  --dv-white: #fff;
  --dv-gray-600: #4b5563;
  --dv-max: 1200px;
  box-sizing: border-box;
  color: #111827;
  background: var(--dv-white);
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, sans-serif;
}

.dv-root *, .dv-root :before, .dv-root :after {
  box-sizing: border-box;
}

.dv-container {
  width: 100%;
  max-width: var(--dv-max);
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.dv-header {
  z-index: 10040;
  opacity: 1;
  -webkit-backdrop-filter: none;
  border-bottom: 1px solid #10b9811f;
  align-items: center;
  height: 70px;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  box-shadow: 0 1px 3px #0f172a0a;
  background: #fff !important;
}

.dv-header-row {
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  width: 100%;
  display: flex;
}

.dv-main-wrap {
  padding-top: var(--dv-header-height);
}

.dv-header-lead {
  align-items: center;
  gap: 0;
  min-width: 0;
  display: flex;
}

.dv-header-lead .dv-logo {
  margin: 0;
  padding-left: 0;
}

.dv-header--app-shell > .dv-container {
  padding-left: max(1rem, env(safe-area-inset-left, 0px));
  padding-right: max(1rem, env(safe-area-inset-right, 0px));
}

@media (min-width: 768px) {
  .dv-header--app-shell > .dv-container {
    padding-left: max(1.5rem, env(safe-area-inset-left, 0px));
    padding-right: max(1.5rem, env(safe-area-inset-right, 0px));
  }
}

.dv-logo {
  color: var(--dv-green);
  letter-spacing: -.02em;
  align-items: center;
  gap: .5rem;
  min-width: 0;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.15;
  text-decoration: none;
  display: inline-flex;
}

.dv-logo-mark {
  box-sizing: border-box;
  background: none;
  flex-grow: 0;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  width: 36px;
  height: 36px;
  display: inline-flex;
}

.dv-logo-mark-img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center center;
  object-position: center center;
  width: 100%;
  height: 100%;
  display: block;
}

.dv-footer-logo .dv-logo-mark {
  width: 44px;
  height: 44px;
}

.dv-footer-brand > a.dv-footer-logo {
  gap: .55rem;
}

.dv-marketing-topbar-logo .dv-logo-mark {
  width: 28px;
  height: 28px;
}

.dv-nav-desktop {
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  display: flex;
}

.dv-nav-desktop a {
  color: var(--dv-green-dark);
  font-size: .95rem;
  font-weight: 500;
  text-decoration: none;
}

.dv-nav-desktop a:hover {
  opacity: .85;
}

.dv-nav-desktop a[aria-current="page"] {
  color: var(--dv-green);
  font-weight: 700;
}

.dv-header-cta {
  align-items: center;
  gap: .75rem;
  display: flex;
}

.dv-header-cta--session {
  margin-left: auto;
}

.dv-notify-wrap {
  flex-shrink: 0;
  position: relative;
}

.dv-notify-trigger {
  background: var(--dv-white);
  cursor: pointer;
  width: 42px;
  height: 42px;
  color: var(--dv-green-dark);
  border: 2px solid #10b98159;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: border-color .2s, box-shadow .2s;
  display: inline-flex;
  box-shadow: 0 2px 10px #0f172a0f;
}

.dv-notify-trigger:hover {
  border-color: #10b981a6;
  box-shadow: 0 4px 14px #10b9812e;
}

.dv-notify-icon {
  width: 20px;
  height: 20px;
}

.dv-notify-badge {
  text-align: center;
  min-width: 1.125rem;
  color: var(--dv-white);
  background: linear-gradient(135deg, #059669, var(--dv-green));
  pointer-events: none;
  border-radius: 999px;
  padding: .125rem .35rem;
  font-size: .625rem;
  font-weight: 800;
  line-height: 1.1;
  position: absolute;
  top: -2px;
  right: -2px;
  box-shadow: 0 2px 8px #10b98173;
}

.dv-notify-dropdown-panel {
  z-index: 10060 !important;
  background: var(--dv-white) !important;
  border: 1px solid #10b98138 !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 44px #0f172a24 !important;
}

.dv-btn-outline {
  border: 2px solid var(--dv-green);
  color: var(--dv-green-dark);
  background: none;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: .55rem 1.25rem;
  font-size: .9rem;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
}

.dv-btn-outline:hover {
  background: #10b98114;
}

.dv-btn-solid {
  background: linear-gradient(135deg, #059669, var(--dv-green));
  color: var(--dv-white);
  border: none;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  padding: .55rem 1.35rem;
  font-size: .9rem;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  box-shadow: 0 4px 14px #10b98159;
}

.dv-btn-solid:hover {
  filter: brightness(1.05);
}

.dv-mob-nav-trigger-wrap, .dv-details {
  display: none;
}

.dv-mob-drawer-root {
  z-index: 10050;
  pointer-events: none;
  position: fixed;
  inset: 0;
}

.dv-mob-drawer-root > * {
  pointer-events: auto;
}

.dv-mob-drawer-backdrop {
  cursor: pointer;
  opacity: 0;
  -webkit-backdrop-filter: blur();
  background: #0f172a9e;
  border: none;
  margin: 0;
  padding: 0;
  transition: opacity .42s ease-in-out, -webkit-backdrop-filter .42s ease-in-out, backdrop-filter .42s ease-in-out;
  position: absolute;
  inset: 0;
}

.dv-mob-drawer-root--open .dv-mob-drawer-backdrop {
  opacity: 1;
  -webkit-backdrop-filter: blur(14px);
}

.dv-mob-drawer-panel {
  z-index: 2;
  opacity: 1;
  isolation: isolate;
  mix-blend-mode: normal;
  -webkit-backdrop-filter: none;
  will-change: transform;
  background-color: #fff;
  background-image: none;
  border-right: 1px solid #10b98140;
  flex-direction: column;
  width: 70vw;
  max-width: 70vw;
  min-height: 0;
  transition: transform .42s ease-in-out;
  display: flex;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  transform: translateX(-100%);
  box-shadow: 8px 0 36px #0f172a38;
}

.dv-mob-drawer-root--open .dv-mob-drawer-panel {
  transform: translateX(0);
}

@media (prefers-reduced-motion: reduce) {
  .dv-mob-drawer-backdrop, .dv-mob-drawer-panel {
    transition-duration: .01ms !important;
  }

  .dv-mob-drawer-link, .dv-mob-drawer-link:hover, .dv-mob-drawer-link:active, .dv-mob-drawer-link:hover .dv-mob-drawer-link-chevron {
    transform: none !important;
  }
}

.dv-mob-drawer-top {
  background-color: #fff;
  border-bottom: 1px solid #e2e8f0f2;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  padding: .55rem .75rem;
  display: flex;
}

.dv-mob-drawer-title {
  min-width: 0;
  color: var(--dv-green-dark);
  flex: 1;
  align-items: center;
  gap: .5rem;
  font-size: .9rem;
  font-weight: 700;
  display: flex;
}

.dv-mob-drawer-title .dv-logo-mark {
  width: 32px;
  height: 32px;
}

.dv-mob-drawer-title-text {
  text-overflow: ellipsis;
  white-space: nowrap;
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.dv-mob-drawer-close {
  width: 40px;
  height: 40px;
  color: var(--dv-green-dark);
  cursor: pointer;
  background: #ecfdf5e6;
  border: none;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  transition: background .15s;
  display: inline-flex;
}

.dv-mob-drawer-close:hover {
  background: var(--dv-green-soft);
}

.dv-mob-drawer-close-icon {
  width: 1.15rem;
  height: 1.15rem;
}

.dv-mob-drawer-scroll {
  -webkit-overflow-scrolling: touch;
  background: linear-gradient(#fafefd 0%, #fff 28% 100%);
  flex: 1;
  min-height: 0;
  padding: .65rem .65rem 1rem;
  overflow-y: auto;
}

.dv-mob-drawer-footer {
  padding: .6rem .75rem;
  padding-bottom: max(.65rem, env(safe-area-inset-bottom));
  background-color: #fff;
  border-top: 1px solid #e2e8f0fa;
  flex-shrink: 0;
  margin-top: auto;
}

.dv-mob-drawer-footer-logout {
  cursor: pointer;
  color: #be123c;
  background: linear-gradient(#fff1f2d9 0%, #ffffff59 100%);
  border: 1px solid #fb718573;
  border-radius: 11px;
  justify-content: center;
  align-items: center;
  gap: .45rem;
  width: 100%;
  padding: .55rem .65rem;
  font-size: .875rem;
  font-weight: 700;
  transition: background .15s, color .15s, box-shadow .15s;
  display: flex;
}

.dv-mob-drawer-footer-logout:hover {
  color: #9f1239;
  background: linear-gradient(#fff1f2 0%, #ffe4e6 100%);
  box-shadow: 0 2px 10px #be123c24;
}

.dv-mob-drawer-footer-logout-icon {
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
}

.dv-mob-drawer-footer-auth {
  flex-direction: column;
  gap: .45rem;
  display: flex;
}

.dv-mob-drawer-footer-auth .dv-btn-outline, .dv-mob-drawer-footer-auth .dv-btn-solid {
  justify-content: center;
  width: 100%;
}

.dv-mob-drawer-nav {
  flex-direction: column;
  gap: 0;
  display: flex;
}

.dv-mob-drawer-nav-card {
  background: linear-gradient(165deg, #ecfdf5a6 0%, #fffffffa 55%, #fff 100%);
  border: 1px solid #10b9812e;
  border-radius: 16px;
  flex-direction: column;
  gap: .35rem;
  padding: .45rem;
  display: flex;
  box-shadow: inset 0 1px #ffffffe6, 0 10px 28px #0f172a0f;
}

.dv-mob-drawer-link {
  min-height: 3rem;
  color: var(--dv-green-dark);
  letter-spacing: -.01em;
  background: #ffffff8c;
  border: 1px solid #0000;
  border-radius: 12px;
  align-items: center;
  gap: .65rem;
  padding: .45rem .55rem .45rem .45rem;
  font-size: .9rem;
  font-weight: 600;
  line-height: 1.25;
  text-decoration: none;
  transition: background .18s, border-color .18s, box-shadow .18s, transform .18s;
  display: flex;
  box-shadow: inset 0 1px #ffffffbf;
}

.dv-mob-drawer-link:hover {
  background: #d1fae5a6;
  border-color: #10b98138;
  transform: translateX(2px);
  box-shadow: 0 6px 16px #10b9811f;
}

.dv-mob-drawer-link:active {
  transform: scale(.99);
}

.dv-mob-drawer-link--current {
  color: var(--dv-green);
  background: linear-gradient(135deg, #d1fae5f2 0%, #ecfdf58c 100%);
  border-color: #10b98161;
  box-shadow: 0 0 0 1px #10b9811f, 0 8px 20px #10b9812e;
}

.dv-mob-drawer-link--current .dv-mob-drawer-link-icon-wrap {
  color: #fff;
  background: linear-gradient(145deg, #34d399, #10b981);
  box-shadow: 0 4px 12px #10b98159;
}

.dv-mob-drawer-link--current .dv-mob-drawer-link-chevron {
  color: var(--dv-green);
  opacity: 1;
}

.dv-mob-drawer-link-icon-wrap {
  width: 2.45rem;
  height: 2.45rem;
  color: var(--dv-green-dark);
  background: #ecfdf5f2;
  border: 1px solid #10b9811f;
  border-radius: 12px;
  flex-shrink: 0;
  place-items: center;
  transition: background .18s, color .18s, box-shadow .18s;
  display: grid;
}

.dv-mob-drawer-link:hover .dv-mob-drawer-link-icon-wrap {
  background: #d1fae5e6;
  border-color: #10b98133;
}

.dv-mob-drawer-link-icon {
  stroke-width: 2.25px;
  width: 1.15rem;
  height: 1.15rem;
}

.dv-mob-drawer-link-label {
  text-align: left;
  flex: 1;
  min-width: 0;
}

.dv-mob-drawer-link-chevron {
  color: #94a3b8;
  opacity: .85;
  flex-shrink: 0;
  width: 1.1rem;
  height: 1.1rem;
  transition: color .18s, transform .18s;
}

.dv-mob-drawer-link:hover .dv-mob-drawer-link-chevron {
  color: var(--dv-green-dark);
  transform: translateX(2px);
}

.dv-mob-drawer-actions {
  border-top: 1px solid #10b98126;
  flex-direction: column;
  gap: .4rem;
  margin-top: .65rem;
  padding-top: .65rem;
  display: flex;
}

.dv-mob-drawer-actions .dv-btn-outline, .dv-mob-drawer-actions .dv-btn-solid {
  justify-content: center;
  width: 100%;
}

.dv-mob-drawer-actions--user .dv-btn-ghost {
  text-align: center;
  justify-content: center;
  width: 100%;
}

@media (max-width: 900px) {
  .dv-root {
    --dv-header-height: 48px;
  }

  .dv-header {
    height: 48px;
  }

  .dv-header-row {
    gap: 0;
  }

  .dv-header-lead {
    gap: .25rem;
  }

  .dv-header:not(.dv-header--app-shell) > .dv-container {
    padding-left: max(.2rem, env(safe-area-inset-left, 0px));
    padding-right: max(.65rem, env(safe-area-inset-right, 0px));
  }

  .dv-header--app-shell > .dv-container {
    padding-left: max(.2rem, env(safe-area-inset-left, 0px));
    padding-right: max(1rem, env(safe-area-inset-right, 0px));
  }

  .dv-header-lead .dv-mob-nav-trigger-wrap {
    margin: 0;
  }

  .dv-logo {
    gap: .35rem;
    font-size: 1.0625rem;
  }

  .dv-logo-mark {
    width: 30px;
    height: 30px;
  }

  .dv-profile-trigger, .dv-notify-trigger {
    width: 34px;
    height: 34px;
  }

  .dv-nav-desktop, .dv-header-cta {
    display: none;
  }

  .dv-header--session .dv-header-cta {
    align-items: center;
    gap: .6rem;
    margin-left: auto;
    display: flex;
  }

  .dv-mob-nav-trigger-wrap {
    flex-shrink: 0;
    align-items: center;
    display: flex;
  }

  .dv-mob-nav-trigger {
    cursor: pointer;
    box-sizing: border-box;
    border: 2px solid var(--dv-green);
    width: 30px;
    min-width: 30px;
    height: 30px;
    min-height: 30px;
    color: var(--dv-green-dark);
    background: var(--dv-white);
    border-radius: 10px;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 0;
    line-height: 0;
    list-style: none;
    display: inline-flex;
  }

  .dv-mob-nav-trigger-icon {
    stroke-width: 2.35px;
    flex-shrink: 0;
    width: 18px;
    height: 18px;
  }

  .dv-mob-nav-trigger:hover {
    background: #ecfdf5d9;
  }

  .dv-details {
    display: block;
    position: relative;
  }

  .dv-details summary {
    cursor: pointer;
    border: 2px solid var(--dv-green);
    width: 40px;
    height: 40px;
    color: var(--dv-green-dark);
    background: var(--dv-white);
    border-radius: 11px;
    place-items: center;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1;
    list-style: none;
    display: grid;
  }

  .dv-details summary::-webkit-details-marker {
    display: none;
  }

  .dv-mobile-links {
    background: var(--dv-white);
    z-index: 150;
    border: 1px solid #10b98133;
    border-radius: 14px;
    flex-direction: column;
    gap: .3rem;
    min-width: 220px;
    padding: .65rem;
    display: flex;
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    box-shadow: 0 16px 40px #0f172a1f;
  }

  .dv-mobile-links a {
    color: var(--dv-green-dark);
    border-radius: 10px;
    padding: .45rem .6rem;
    font-size: .875rem;
    font-weight: 600;
    text-decoration: none;
  }

  .dv-mobile-links a:hover {
    background: var(--dv-green-soft);
  }

  .dv-mobile-links .dv-mob-actions {
    border-top: 1px solid #10b98126;
    flex-direction: column;
    gap: .45rem;
    margin-top: .45rem;
    padding-top: .45rem;
    display: flex;
  }

  .dv-mobile-links .dv-mob-actions .dv-btn-outline, .dv-mobile-links .dv-mob-actions .dv-btn-solid {
    justify-content: center;
    width: 100%;
  }

  .dv-mobile-links .dv-mob-user .dv-btn-ghost {
    text-align: center;
    justify-content: center;
    width: 100%;
  }
}

.dv-cta-skeleton {
  background: linear-gradient(90deg, #ecfdf5 0%, #d1fae5 50%, #ecfdf5 100%) 0 0 / 200% 100%;
  border-radius: 999px;
  width: 88px;
  height: 38px;
  animation: 1.2s ease-in-out infinite dv-shimmer;
  display: inline-block;
}

@keyframes dv-shimmer {
  0% {
    background-position: 100% 0;
  }

  100% {
    background-position: -100% 0;
  }
}

.dv-profile-wrap {
  z-index: 10080;
  position: relative;
}

.dv-profile-trigger {
  background: var(--dv-white);
  cursor: pointer;
  border: 2px solid #10b98159;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  width: 42px;
  height: 42px;
  padding: 0;
  transition: border-color .2s, box-shadow .2s;
  display: inline-flex;
  box-shadow: 0 2px 10px #0f172a0f;
}

.dv-profile-trigger:hover {
  border-color: #10b981a6;
  box-shadow: 0 4px 14px #10b9812e;
}

.dv-profile-avatar-img {
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 999px;
  width: 100%;
  height: 100%;
  display: block;
}

.dv-profile-initial {
  color: var(--dv-green-dark);
  font-size: 1rem;
  font-weight: 800;
}

.dv-profile-dropdown {
  box-sizing: border-box;
  background: var(--dv-white);
  z-index: 10100;
  border: 1px solid #10b98138;
  border-radius: 12px;
  width: 11rem;
  max-width: min(11rem, 100vw - 1.5rem);
  padding: .35rem .4rem;
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  overflow: hidden;
  box-shadow: 0 18px 44px #0f172a24;
}

.dv-profile-dropdown-head {
  border-bottom: 1px solid #e2e8f0f2;
  min-width: 0;
  margin-bottom: .2rem;
  padding: .35rem .45rem .45rem;
}

.dv-profile-dropdown-name {
  color: #111827;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: .75rem;
  font-weight: 700;
  line-height: 1.3;
  display: block;
  overflow: hidden;
}

.dv-profile-dropdown-meta {
  color: #64748b;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin-top: .2rem;
  font-size: .6875rem;
  font-weight: 600;
  line-height: 1.25;
  display: block;
  overflow: hidden;
}

.dv-dropdown-item-label {
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
  text-align: inherit;
  flex: auto;
  overflow: hidden;
}

.dv-dropdown-item {
  width: 100%;
  min-width: 0;
  color: var(--dv-green-dark);
  text-align: left;
  cursor: pointer;
  background: none;
  border: none;
  border-radius: 9px;
  align-items: center;
  gap: .45rem;
  padding: .4rem .5rem;
  font-size: .8125rem;
  font-weight: 600;
  transition: background .15s, color .15s, box-shadow .15s;
  display: flex;
}

.dv-dropdown-item:hover {
  background: var(--dv-green-soft);
}

.dv-dropdown-item-icon {
  opacity: .92;
  flex-shrink: 0;
  width: .95rem;
  height: .95rem;
}

.dv-dropdown-item--danger {
  color: #be123c;
  background: linear-gradient(#fff1f2a6 0%, #fff6 100%);
  border-top: 1px solid #e2e8f0f2;
  margin-top: .3rem;
  padding-top: .5rem;
  box-shadow: inset 0 1px #fffc;
}

.dv-dropdown-item--danger .dv-dropdown-item-icon {
  color: #be123c;
  opacity: 1;
}

.dv-dropdown-item--danger:hover {
  color: #9f1239;
  background: linear-gradient(#fff1f2 0%, #ffe4e6 100%);
  box-shadow: inset 0 1px #ffffffa6, 0 2px 8px #be123c1f;
}

.dv-dropdown-item--danger:hover .dv-dropdown-item-icon {
  color: #9f1239;
}

.dv-btn-ghost {
  color: var(--dv-green-dark);
  cursor: pointer;
  background: #ecfdf5d9;
  border: none;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  padding: .65rem .85rem;
  font-size: .95rem;
  font-weight: 700;
  text-decoration: none;
  display: inline-flex;
}

.dv-btn-ghost:hover {
  background: var(--dv-green-soft);
}

.dv-btn-ghost--danger {
  color: #b91c1c;
  background: #fef2f2;
}

.dv-btn-ghost--danger:hover {
  background: #fee2e2;
}

.dv-footer {
  background: linear-gradient(#fff 0%, #f8fafc 50%, #eef2f7 100%);
  border-top: 1px solid #10b9812e;
  margin-top: auto;
}

.dv-footer-main {
  grid-template-columns: minmax(220px, 1.4fr) repeat(3, minmax(0, 1fr));
  gap: 2.5rem 2.25rem;
  max-width: 80rem;
  margin: 0 auto;
  padding: 3.25rem 1.5rem 2.5rem;
  display: grid;
}

.dv-footer-mobile-pair {
  display: contents;
}

@media (max-width: 960px) {
  .dv-footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .dv-footer-main {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem 1rem;
    padding-top: 2.5rem;
  }

  .dv-footer-mobile-pair {
    display: contents;
  }

  .dv-footer-brand {
    grid-column: 1 / -1;
  }

  .dv-footer-main > .dv-footer-col, .dv-footer-main > .dv-footer-mobile-pair .dv-footer-col {
    min-width: 0;
  }
}

.dv-footer-brand {
  min-width: 0;
  padding-right: .5rem;
}

.dv-footer-brand > a.dv-footer-logo {
  color: var(--dv-green);
  letter-spacing: -.02em;
  align-items: center;
  gap: .5rem;
  font-size: 1.2rem;
  font-weight: 700;
  text-decoration: none;
  display: inline-flex;
}

.dv-footer-brand > a.dv-footer-logo:hover {
  opacity: .9;
}

.dv-footer-tagline {
  color: #64748b;
  max-width: 22rem;
  margin: .9rem 0 0;
  font-size: .9375rem;
  line-height: 1.6;
}

.dv-footer-col-title {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #334155;
  margin: 0 0 1.1rem;
  font-size: .6875rem;
  font-weight: 700;
}

.dv-footer-links {
  margin: 0;
  padding: 0;
  list-style: none;
}

.dv-footer-links li {
  margin: 0 0 .65rem;
}

.dv-footer-links li:last-child {
  margin-bottom: 0;
}

.dv-footer-links a {
  color: #475569;
  font-size: .9375rem;
  font-weight: 500;
  text-decoration: none;
  transition: color .15s;
}

.dv-footer-links a:hover {
  color: #059669;
}

.dv-footer-bottom {
  border-top: 1px solid #e2e8f0;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 1rem 1.5rem;
  max-width: 80rem;
  margin: 0 auto;
  padding: 1.5rem 1.5rem 2.25rem;
  display: flex;
}

.dv-footer-legal {
  color: #6b7280;
  flex-wrap: wrap;
  align-items: center;
  gap: .35rem 1rem;
  font-size: .8125rem;
  display: flex;
}

.dv-footer-legal a {
  color: #6b7280;
  font-weight: 500;
  text-decoration: none;
}

.dv-footer-legal a:hover {
  color: #059669;
}

.dv-footer-social {
  align-items: center;
  gap: .65rem;
  display: flex;
}

.dv-footer-social a {
  color: #6b7280;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  place-items: center;
  width: 38px;
  height: 38px;
  transition: color .15s, border-color .15s, box-shadow .15s;
  display: grid;
}

.dv-footer-social a:hover {
  color: #059669;
  border-color: #10b98159;
  box-shadow: 0 4px 14px #10b9811f;
}

.dv-footer-social svg {
  width: 18px;
  height: 18px;
}

.dv-mkt-main {
  color: #111827;
  background: #fafdfb;
}

.dv-mkt-hero {
  background: linear-gradient(165deg, #ecfdf5 0%, #fff 42%, #f0fdf4 100%);
  border-bottom: 1px solid #10b98126;
  padding: 2.25rem 0 2.75rem;
  position: relative;
  overflow: hidden;
}

@media (min-width: 640px) {
  .dv-mkt-hero {
    padding: 3rem 0 3.5rem;
  }
}

.dv-mkt-hero-kicker {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--dv-green-dark);
  background: #d1fae5d9;
  border: 1px solid #10b98138;
  border-radius: 999px;
  align-items: center;
  gap: .5rem;
  margin: 0 auto 1rem;
  padding: .35rem .85rem;
  font-size: .75rem;
  font-weight: 700;
  display: inline-flex;
}

.dv-mkt-hero-title {
  text-align: center;
  letter-spacing: -.03em;
  color: #065f46;
  max-width: 52rem;
  margin: 0 auto;
  font-size: clamp(1.65rem, 4vw, 2.35rem);
  font-weight: 800;
  line-height: 1.15;
}

.dv-mkt-hero-sub {
  text-align: center;
  max-width: 40rem;
  color: var(--dv-gray-600);
  margin: 1rem auto 0;
  font-size: 1rem;
  line-height: 1.65;
}

.dv-mkt-section {
  padding: 2.5rem 0;
}

@media (min-width: 640px) {
  .dv-mkt-section {
    padding: 3rem 0;
  }
}

.dv-mkt-platform {
  background: linear-gradient(#ecfdf5a6 0%, #fff 100%);
  border-bottom: 1px solid #10b9811f;
  padding: 2rem 0 2.5rem;
}

@media (min-width: 640px) {
  .dv-mkt-platform {
    padding: 2.5rem 0 3rem;
  }
}

.dv-mkt-platform-title {
  letter-spacing: -.02em;
  color: #065f46;
  margin: 0 0 1rem;
  font-size: 1.25rem;
  font-weight: 800;
}

.dv-mkt-platform-body {
  color: var(--dv-gray-600);
  flex-direction: column;
  gap: 1rem;
  margin: 0;
  font-size: .975rem;
  line-height: 1.65;
  display: flex;
}

.dv-mkt-platform-body p {
  margin: 0;
}

.dv-mkt-grid {
  gap: 1.25rem;
  display: grid;
}

@media (min-width: 640px) {
  .dv-mkt-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.35rem;
  }
}

@media (min-width: 1024px) {
  .dv-mkt-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.5rem;
  }
}

.dv-mkt-card {
  background: #fff;
  border: 1px solid #10b9812e;
  border-radius: 14px;
  height: 100%;
  padding: 1.35rem 1.25rem;
  transition: border-color .15s, box-shadow .15s;
  box-shadow: 0 8px 28px #0f172a0f;
}

.dv-mkt-card:hover {
  border-color: #10b98159;
  box-shadow: 0 12px 34px #10b9811f;
}

.dv-mkt-card-icon {
  width: 44px;
  height: 44px;
  color: var(--dv-green-dark);
  background: linear-gradient(145deg, #d1fae5f2, #a7f3d0a6);
  border-radius: 12px;
  place-items: center;
  margin-bottom: 1rem;
  display: grid;
}

.dv-mkt-card-icon svg {
  width: 22px;
  height: 22px;
}

.dv-mkt-card-title {
  letter-spacing: -.02em;
  color: #065f46;
  margin: 0 0 .5rem;
  font-size: 1.05rem;
  font-weight: 700;
}

.dv-mkt-card-body {
  color: var(--dv-gray-600);
  margin: 0;
  font-size: .9rem;
  line-height: 1.55;
}

.dv-mkt-cta {
  text-align: center;
  background: linear-gradient(135deg, #ecfdf5 0%, #fff 55%, #f0fdf4 100%);
  border: 1px solid #10b98138;
  border-radius: 16px;
  margin-top: 2rem;
  padding: 2rem 1.5rem;
}

@media (min-width: 640px) {
  .dv-mkt-cta {
    padding: 2.25rem 2rem;
  }
}

.dv-mkt-cta-title {
  color: #065f46;
  margin: 0 0 .5rem;
  font-size: 1.2rem;
  font-weight: 800;
}

.dv-mkt-cta-sub {
  max-width: 36rem;
  color: var(--dv-gray-600);
  margin: 0 auto 1.25rem;
  font-size: .95rem;
  line-height: 1.55;
}

.dv-mkt-cta-row {
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: .75rem;
  display: flex;
}

.dv-mkt-btn {
  cursor: pointer;
  border: none;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  gap: .45rem;
  padding: .65rem 1.35rem;
  font-size: .9375rem;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .15s, transform .15s;
  display: inline-flex;
}

.dv-mkt-btn:focus-visible {
  outline: 2px solid var(--dv-green);
  outline-offset: 2px;
}

.dv-mkt-btn--primary {
  color: #fff;
  background: linear-gradient(145deg, #34d399, #10b981);
  box-shadow: 0 6px 18px #10b98159;
}

.dv-mkt-btn--primary:hover {
  opacity: .94;
}

.dv-mkt-btn--ghost {
  color: var(--dv-green-dark);
  background: #fff;
  border: 1px solid #10b98159;
}

.dv-mkt-btn--ghost:hover {
  background: #ecfdf5a6;
  border-color: #10b9818c;
}

.dv-mkt-panel {
  background: #fff;
  border: 1px solid #10b98133;
  border-radius: 16px;
  padding: 1.65rem 1.35rem;
  box-shadow: 0 12px 36px #0f172a12;
}

@media (min-width: 640px) {
  .dv-mkt-panel {
    padding: 2rem 1.75rem;
  }
}

.dv-mkt-contact-stack {
  flex-direction: column;
  gap: 1rem;
  display: flex;
}

.dv-mkt-detail-row {
  align-items: flex-start;
  gap: 1rem;
  display: flex;
}

.dv-mkt-detail-icon {
  width: 44px;
  height: 44px;
  color: var(--dv-green-dark);
  background: linear-gradient(145deg, #d1fae5f2, #a7f3d0a6);
  border-radius: 12px;
  flex-shrink: 0;
  place-items: center;
  display: grid;
}

.dv-mkt-detail-icon svg {
  width: 22px;
  height: 22px;
}

.dv-mkt-support-grid {
  gap: 1rem;
  display: grid;
}

@media (min-width: 768px) {
  .dv-mkt-support-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.15rem;
  }
}

.dv-contact-page.dv-mkt-main {
  background: #fafafa;
}

.dv-contact-page .dv-mkt-hero {
  background: linear-gradient(#fff 0%, #fafafa 100%);
  border-bottom: 1px solid #1118270f;
  padding: 1.75rem 0 1.25rem;
}

@media (min-width: 640px) {
  .dv-contact-page .dv-mkt-hero {
    padding: 2rem 0 1.5rem;
  }
}

.dv-contact-page .dv-mkt-hero-kicker {
  letter-spacing: .14em;
  color: #059669;
  background: none;
  border: none;
  margin-bottom: .5rem;
  padding: 0;
  font-size: .6875rem;
  font-weight: 600;
}

.dv-contact-page .dv-mkt-hero-title {
  letter-spacing: -.035em;
  color: #0f172a;
  font-size: clamp(1.875rem, 4vw, 2.25rem);
  font-weight: 600;
  line-height: 1.12;
}

.dv-contact-page .dv-mkt-hero-sub {
  color: #64748b;
  max-width: 28rem;
  margin-top: .5rem;
  font-size: .9375rem;
  line-height: 1.6;
}

.dv-contact-body {
  padding: 1.25rem 0 2rem;
}

@media (min-width: 1024px) {
  .dv-contact-body {
    padding: 1.5rem 0 2.5rem;
  }
}

.dv-contact-layout {
  align-items: start;
  gap: 1.5rem;
  display: grid;
}

@media (min-width: 1024px) {
  .dv-contact-layout {
    grid-template-columns: minmax(260px, 340px) minmax(0, 1fr);
    gap: 2.25rem;
  }
}

.dv-contact-aside-label {
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #64748b;
  margin: 0 0 .65rem;
  font-size: .6875rem;
  font-weight: 600;
}

.dv-contact-list {
  background: #fff;
  border: 1px solid #1118270f;
  border-radius: 16px;
  overflow: hidden;
}

.dv-contact-list-row {
  border-bottom: 1px solid #1118270d;
  align-items: flex-start;
  gap: .85rem;
  padding: .85rem 1.15rem;
  display: flex;
}

.dv-contact-list-row:last-of-type {
  border-bottom: 0;
}

.dv-contact-list-icon {
  color: #059669;
  background: #f1f5f9;
  border-radius: 10px;
  flex-shrink: 0;
  place-items: center;
  width: 36px;
  height: 36px;
  display: grid;
}

.dv-contact-list-icon svg {
  stroke-width: 2px;
  width: 18px;
  height: 18px;
}

.dv-contact-list-label {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #94a3b8;
  margin: 0;
  font-size: .6875rem;
  font-weight: 600;
}

.dv-contact-list-value {
  color: #0f172a;
  word-break: break-word;
  margin: .25rem 0 0;
  font-size: .9375rem;
  font-weight: 500;
  line-height: 1.45;
}

.dv-contact-location {
  background: #fff;
  border: 1px solid #1118270f;
  border-radius: 16px;
  margin-top: .85rem;
  padding: 1.35rem 1.25rem;
}

.dv-contact-location-title {
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #94a3b8;
  margin: 0 0 .35rem;
  font-size: .6875rem;
  font-weight: 600;
}

.dv-contact-location-name {
  color: #0f172a;
  letter-spacing: -.02em;
  margin: 0 0 .5rem;
  font-size: 1rem;
  font-weight: 600;
}

.dv-contact-location-desc {
  color: #64748b;
  margin: 0 0 1rem;
  font-size: .8125rem;
  line-height: 1.55;
}

.dv-contact-location-meta {
  border-top: 1px solid #1118270f;
  padding-top: 1rem;
}

.dv-contact-location-meta-row {
  align-items: flex-start;
  gap: .65rem;
  display: flex;
}

.dv-contact-location-meta-row svg {
  color: #059669;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-top: 2px;
}

.dv-contact-location-meta-label {
  color: #334155;
  margin: 0;
  font-size: .8125rem;
  font-weight: 600;
}

.dv-contact-location-meta-hint {
  color: #94a3b8;
  margin: .35rem 0 0;
  font-size: .75rem;
  line-height: 1.55;
}

.dv-contact-main {
  flex-direction: column;
  gap: 1.25rem;
  display: flex;
}

@media (min-width: 640px) {
  .dv-contact-main {
    gap: 1.5rem;
  }
}

.dv-contact-form-wrap {
  background: #fff;
  border: 1px solid #1118270f;
  border-radius: 20px;
  padding: 1.75rem 1.35rem;
  box-shadow: 0 1px 3px #0f172a0a;
}

@media (min-width: 640px) {
  .dv-contact-form-wrap {
    padding: 2.25rem 2rem;
  }
}

.dv-contact-form-head {
  margin-bottom: 1.25rem;
}

.dv-contact-form-head-title {
  letter-spacing: -.025em;
  color: #0f172a;
  margin: 0;
  font-size: 1.125rem;
  font-weight: 600;
}

.dv-contact-form-head-lead {
  color: #64748b;
  margin: .5rem 0 0;
  font-size: .875rem;
  line-height: 1.55;
}

.dv-contact-form-actions {
  margin-top: .25rem;
}

.dv-contact-support {
  gap: 1rem;
  display: grid;
}

@media (min-width: 768px) {
  .dv-contact-support {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.dv-contact-support-item {
  border-left: 2px solid #10b98159;
  padding-left: 1rem;
}

.dv-contact-support-title {
  color: #0f172a;
  margin: 0 0 .35rem;
  font-size: .8125rem;
  font-weight: 600;
}

.dv-contact-support-body {
  color: #64748b;
  margin: 0;
  font-size: .8125rem;
  line-height: 1.55;
}

.dv-contact-help {
  background: #f8fafc;
  border: 1px solid #1118270d;
  border-radius: 16px;
  padding: 1.25rem 1.2rem;
}

@media (min-width: 640px) {
  .dv-contact-help {
    padding: 1.35rem 1.5rem;
  }
}

.dv-contact-help-title {
  letter-spacing: -.02em;
  color: #0f172a;
  margin: 0 0 .85rem;
  font-size: .9375rem;
  font-weight: 600;
}

.dv-contact-help-grid {
  gap: 1rem;
  display: grid;
}

@media (min-width: 640px) {
  .dv-contact-help-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
  }
}

.dv-contact-help-item-title {
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #64748b;
  margin: 0 0 .35rem;
  font-size: .75rem;
  font-weight: 600;
}

.dv-contact-help-item-body {
  color: #475569;
  margin: 0;
  font-size: .8125rem;
  line-height: 1.55;
}

.dv-contact-help-note {
  border-top: 1px solid #1118270f;
  margin: 1rem 0 0;
  padding-top: 1rem;
}

.dv-contact-help-note-inner {
  align-items: flex-start;
  gap: .65rem;
  display: flex;
}

.dv-contact-help-note-inner svg {
  color: #059669;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-top: 3px;
}

.dv-contact-help-note-text {
  color: #64748b;
  margin: 0;
  font-size: .8125rem;
  line-height: 1.55;
}

.dv-contact-help-note-text strong {
  color: #334155;
  margin-bottom: .25rem;
  font-weight: 600;
  display: block;
}

.dv-specialties-section {
  padding: .35rem 0 1.35rem;
}

@media (min-width: 640px) {
  .dv-specialties-section {
    padding: .5rem 0 1.75rem;
  }
}

.dv-specialties-head {
  text-align: center;
  margin-bottom: 1.1rem;
}

.dv-specialties-title {
  letter-spacing: -.02em;
  color: var(--dv-green-dark);
  margin: 0;
  font-size: 1.75rem;
  font-weight: 800;
}

.dv-specialties-sub {
  color: #64748b;
  max-width: 36rem;
  margin: .4rem auto 0;
  font-size: .9375rem;
  line-height: 1.5;
}

.dv-specialties-list {
  flex-wrap: wrap;
  justify-content: center;
  gap: .5rem .65rem;
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
}

.dv-specialty-chip {
  min-height: 40px;
  color: var(--dv-green-dark);
  text-align: center;
  white-space: normal;
  -webkit-hyphens: auto;
  hyphens: auto;
  background: #fff;
  border: 1px solid #10b98147;
  border-radius: 999px;
  justify-content: center;
  align-items: center;
  max-width: 240px;
  padding: .45rem 1rem;
  font-size: .875rem;
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
  transition: border-color .15s, background .15s, box-shadow .15s, transform .15s;
  display: inline-flex;
  box-shadow: 0 1px 2px #0f172a0a;
}

.dv-specialty-chip:hover {
  background: #ecfdf5d9;
  border-color: #10b98180;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px #10b9811f;
}

.dv-specialty-chip:focus-visible {
  outline: 2px solid var(--dv-green);
  outline-offset: 2px;
}

.dv-doc-profile-main {
  color: #111827;
  background: #fafdfb;
  min-height: 100%;
  padding-bottom: 3rem;
}

@media (min-width: 768px) {
  .dv-doc-profile-main {
    padding-bottom: 4rem;
  }
}

.dv-doc-back-row {
  padding: 1rem 0 .75rem;
}

.dv-doc-back-link {
  color: var(--dv-green-dark);
  align-items: center;
  gap: .35rem;
  font-size: .875rem;
  font-weight: 600;
  text-decoration: none;
  transition: opacity .15s;
  display: inline-flex;
}

.dv-doc-back-link:hover {
  opacity: .82;
}

.dv-doc-back-link svg {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
}

.dv-doc-hero {
  background: linear-gradient(145deg, #ecfdf5 0%, #fff 48%, #f0fdf4 100%);
  border: 1px solid #10b9812e;
  border-radius: 20px;
  margin-bottom: 1.5rem;
  padding: 1.35rem 1.25rem;
  position: relative;
  overflow: hidden;
  box-shadow: 0 16px 40px #0f172a0f;
}

@media (min-width: 640px) {
  .dv-doc-hero {
    margin-bottom: 2rem;
    padding: 1.75rem;
  }
}

@media (min-width: 1024px) {
  .dv-doc-hero {
    padding: 2rem;
  }
}

.dv-doc-hero-inner {
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
  display: flex;
}

@media (min-width: 640px) {
  .dv-doc-hero-inner {
    flex-direction: row;
    align-items: center;
    gap: 1.75rem;
  }
}

.dv-doc-avatar-wrap {
  flex-shrink: 0;
}

.dv-doc-avatar {
  -o-object-fit: cover;
  object-fit: cover;
  border: 3px solid #fffffff2;
  border-radius: 20px;
  width: 112px;
  height: 112px;
  box-shadow: 0 12px 32px #10b98133;
}

.dv-doc-avatar-fallback {
  letter-spacing: -.02em;
  color: #065f46;
  background: linear-gradient(145deg, #d1fae5, #a7f3d0);
  border: 3px solid #fffffff2;
  border-radius: 20px;
  place-items: center;
  width: 112px;
  height: 112px;
  font-size: 2rem;
  font-weight: 800;
  display: grid;
  box-shadow: 0 12px 28px #10b9812e;
}

.dv-doc-hero-body {
  flex: 1;
  min-width: 0;
}

.dv-doc-hero-title {
  letter-spacing: -.03em;
  color: #065f46;
  margin: 0;
  font-size: clamp(1.35rem, 3.5vw, 1.85rem);
  font-weight: 800;
  line-height: 1.15;
}

.dv-doc-hero-meta {
  color: #475569;
  margin: .35rem 0 0;
  font-size: 1rem;
  font-weight: 500;
}

.dv-doc-hero-row {
  flex-wrap: wrap;
  align-items: center;
  gap: .5rem .75rem;
  margin-top: .85rem;
  display: flex;
}

.dv-doc-hero-stats {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .65rem;
  max-width: 420px;
  margin-top: 1rem;
  display: grid;
}

@media (max-width: 380px) {
  .dv-doc-hero-stats {
    grid-template-columns: 1fr;
    max-width: none;
  }
}

.dv-doc-mini-stat {
  background: #ffffffd9;
  border: 1px solid #10b98124;
  border-radius: 12px;
  padding: .65rem .75rem;
}

.dv-doc-mini-stat-label {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #64748b;
  margin: 0;
  font-size: .6875rem;
  font-weight: 600;
}

.dv-doc-mini-stat-value {
  color: #0f172a;
  margin: .15rem 0 0;
  font-size: 1rem;
  font-weight: 700;
}

.dv-doc-layout {
  gap: 1.25rem;
  display: grid;
}

@media (min-width: 1024px) {
  .dv-doc-layout {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 320px);
    align-items: start;
    gap: 1.5rem;
  }

  .dv-doc-layout-span {
    grid-column: 1 / -1;
  }
}

.dv-doc-card {
  background: #fff;
  border: 1px solid #1118270f;
  border-radius: 16px;
  padding: 1.35rem 1.25rem;
  box-shadow: 0 8px 28px #0f172a0d;
}

@media (min-width: 640px) {
  .dv-doc-card {
    padding: 1.5rem;
  }
}

.dv-doc-card-title {
  letter-spacing: -.02em;
  color: #065f46;
  margin: 0 0 1rem;
  font-size: 1.05rem;
  font-weight: 700;
}

.dv-doc-muted {
  color: #64748b;
  margin: 0;
  font-size: .9375rem;
  line-height: 1.65;
}

.dv-doc-detail-grid {
  gap: .65rem 1.25rem;
  display: grid;
}

@media (min-width: 640px) {
  .dv-doc-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.dv-doc-detail-item {
  color: #334155;
  margin: 0;
  font-size: .9rem;
  line-height: 1.45;
}

.dv-doc-detail-label {
  color: #64748b;
  font-weight: 600;
}

.dv-doc-sidebar-metrics {
  flex-direction: column;
  gap: 1rem;
  display: flex;
}

.dv-doc-metric {
  background: linear-gradient(#ecfdf5a6 0%, #fff 100%);
  border: 1px solid #10b98124;
  border-radius: 14px;
  padding: 1rem;
}

.dv-doc-metric-label {
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #64748b;
  margin: 0;
  font-size: .6875rem;
  font-weight: 600;
}

.dv-doc-metric-value {
  color: #0f172a;
  margin: .35rem 0 0;
  font-size: 1rem;
  font-weight: 700;
}

.dv-doc-cal-scroll {
  scrollbar-width: thin;
  margin: 0 -.25rem;
  padding-bottom: .35rem;
  overflow-x: auto;
}

.dv-doc-cal-days {
  flex-wrap: nowrap;
  gap: .5rem;
  min-width: min-content;
  padding: 0 .25rem;
  display: flex;
}

.dv-doc-slot-panel {
  background: #f8fafcd9;
  border: 1px solid #10b9812e;
  border-radius: 14px;
  padding: 1rem;
}

.dv-doc-slot-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .5rem;
  display: grid;
}

@media (min-width: 480px) {
  .dv-doc-slot-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.dv-doc-selected-slot {
  background: #ecfdf5bf;
  border: 1px solid #10b98159;
  border-radius: 12px;
  margin-top: 1rem;
  padding: .75rem 1rem;
}

.dv-doc-fees-grid {
  gap: .75rem;
  display: grid;
}

@media (min-width: 768px) {
  .dv-doc-fees-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

.dv-doc-fee-card {
  background: #fafafa;
  border: 1px solid #1118270f;
  border-radius: 14px;
  padding: 1rem;
  transition: border-color .15s, box-shadow .15s;
}

.dv-doc-fee-card:hover {
  border-color: #10b98147;
  box-shadow: 0 6px 18px #10b98114;
}

.dv-doc-exp-list {
  flex-direction: column;
  gap: .75rem;
  display: flex;
}

.dv-doc-exp-item {
  border-left: 3px solid #10b98173;
  padding-bottom: .25rem;
  padding-left: 1.15rem;
  position: relative;
}

.dv-doc-exp-item:last-child {
  padding-bottom: 0;
}

.dv-doc-exp-inner {
  background: #fff;
  border: 1px solid #1118270f;
  border-radius: 12px;
  padding: 1rem;
}

.dv-doc-loading-card {
  text-align: center;
  background: #fff;
  border: 1px solid #1118270f;
  border-radius: 16px;
  padding: 3rem 1.5rem;
}

/*# sourceMappingURL=src_components_common_3f1af80a._.css.map*/