@charset "UTF-8";
/* line 1, _settings.scss */
:root {
  --bg:var(--draft-bg, #ffffff);
  --bg-is-light:var(--draft-bg-is-light, true);
  --bg-minor-shade:var(--draft-bg-minor-shade, #f7f7f7);
  --bg-minor-shade-is-light:var(--draft-bg-minor-shade-is-light, true);
  --bg-major-shade:var(--draft-bg-major-shade, #ededed);
  --bg-major-shade-is-light:var(--draft-bg-major-shade-is-light, true);
  --bg-half-shade:var(--draft-bg-half-shade, #808080);
  --bg-half-shade-is-dark:var(--draft-bg-half-shade-is-dark, true);
  --color-btn-bg:var(--draft-color-btn-bg, #3f7f31);
  --color-btn-bg-is-dark:var(--draft-color-btn-bg-is-dark, true);
  --color-btn-bg-minor-shade:var(--draft-color-btn-bg-minor-shade, #4c983b);
  --color-btn-bg-minor-shade-is-dark:var(--draft-color-btn-bg-minor-shade-is-dark, true);
  --color-btn-bg-major-shade:var(--draft-color-btn-bg-major-shade, #58b045);
  --color-btn-bg-major-shade-is-dark:var(--draft-color-btn-bg-major-shade-is-dark, true);
  --color-btn-bg-half-shade:var(--draft-color-btn-bg-half-shade, #95d188);
  --color-btn-bg-half-shade-is-light:var(--draft-color-btn-bg-half-shade-is-light, true);
  --color-accent-text:var(--draft-color-accent-text, #3f7f31);
  --color-accent-text-is-dark:var(--draft-color-accent-text-is-dark, true);
  --color-accent-text-minor-shade:var(--draft-color-accent-text-minor-shade, #4c983b);
  --color-accent-text-minor-shade-is-dark:var(--draft-color-accent-text-minor-shade-is-dark, true);
  --color-accent-text-major-shade:var(--draft-color-accent-text-major-shade, #58b045);
  --color-accent-text-major-shade-is-dark:var(--draft-color-accent-text-major-shade-is-dark, true);
  --color-accent-text-half-shade:var(--draft-color-accent-text-half-shade, #95d188);
  --color-accent-text-half-shade-is-light:var(--draft-color-accent-text-half-shade-is-light, true);
  --color-text-dark:var(--draft-color-text-dark, #172017);
  --color-text-dark-is-dark:var(--draft-color-text-dark-is-dark, true);
  --color-text-dark-minor-shade:var(--draft-color-text-dark-minor-shade, #2b3b2b);
  --color-text-dark-minor-shade-is-dark:var(--draft-color-text-dark-minor-shade-is-dark, true);
  --color-text-dark-major-shade:var(--draft-color-text-dark-major-shade, #3e553e);
  --color-text-dark-major-shade-is-dark:var(--draft-color-text-dark-major-shade-is-dark, true);
  --color-text-dark-half-shade:var(--draft-color-text-dark-half-shade, #7ba07b);
  --color-text-dark-half-shade-is-dark:var(--draft-color-text-dark-half-shade-is-dark, true);
  --color-text-light:var(--draft-color-text-light, #ffffff);
  --color-text-light-is-light:var(--draft-color-text-light-is-light, true);
  --color-text-light-minor-shade:var(--draft-color-text-light-minor-shade, #f7f7f7);
  --color-text-light-minor-shade-is-light:var(--draft-color-text-light-minor-shade-is-light, true);
  --color-text-light-major-shade:var(--draft-color-text-light-major-shade, #ededed);
  --color-text-light-major-shade-is-light:var(--draft-color-text-light-major-shade-is-light, true);
  --color-text-light-half-shade:var(--draft-color-text-light-half-shade, #808080);
  --color-text-light-half-shade-is-dark:var(--draft-color-text-light-half-shade-is-dark, true);
  --icons_pack:var(--draft-icons_pack, insales-default);
  --controls-btn-border-radius:var(--draft-controls-btn-border-radius, 10px);
  --color-notice-warning:var(--draft-color-notice-warning, #fff3cd);
  --color-notice-warning-is-light:var(--draft-color-notice-warning-is-light, true);
  --color-notice-warning-minor-shade:var(--draft-color-notice-warning-minor-shade, #fff0be);
  --color-notice-warning-minor-shade-is-light:var(--draft-color-notice-warning-minor-shade-is-light, true);
  --color-notice-warning-major-shade:var(--draft-color-notice-warning-major-shade, #ffecac);
  --color-notice-warning-major-shade-is-light:var(--draft-color-notice-warning-major-shade-is-light, true);
  --color-notice-warning-half-shade:var(--draft-color-notice-warning-half-shade, #e6b000);
  --color-notice-warning-half-shade-is-dark:var(--draft-color-notice-warning-half-shade-is-dark, true);
  --color-notice-success:var(--draft-color-notice-success, #d4edda);
  --color-notice-success-is-light:var(--draft-color-notice-success-is-light, true);
  --color-notice-success-minor-shade:var(--draft-color-notice-success-minor-shade, #cae9d2);
  --color-notice-success-minor-shade-is-light:var(--draft-color-notice-success-minor-shade-is-light, true);
  --color-notice-success-major-shade:var(--draft-color-notice-success-major-shade, #bee4c7);
  --color-notice-success-major-shade-is-light:var(--draft-color-notice-success-major-shade-is-light, true);
  --color-notice-success-half-shade:var(--draft-color-notice-success-half-shade, #429e58);
  --color-notice-success-half-shade-is-dark:var(--draft-color-notice-success-half-shade-is-dark, true);
  --color-notice-error:var(--draft-color-notice-error, #f8d7da);
  --color-notice-error-is-light:var(--draft-color-notice-error-is-light, true);
  --color-notice-error-minor-shade:var(--draft-color-notice-error-minor-shade, #f6ccd0);
  --color-notice-error-minor-shade-is-light:var(--draft-color-notice-error-minor-shade-is-light, true);
  --color-notice-error-major-shade:var(--draft-color-notice-error-major-shade, #f3bcc1);
  --color-notice-error-major-shade-is-light:var(--draft-color-notice-error-major-shade-is-light, true);
  --color-notice-error-half-shade:var(--draft-color-notice-error-half-shade, #c52330);
  --color-notice-error-half-shade-is-dark:var(--draft-color-notice-error-half-shade-is-dark, true);
  --color-notice-info:var(--draft-color-notice-info, #cce5ff);
  --color-notice-info-is-light:var(--draft-color-notice-info-is-light, true);
  --color-notice-info-minor-shade:var(--draft-color-notice-info-minor-shade, #bedeff);
  --color-notice-info-minor-shade-is-light:var(--draft-color-notice-info-minor-shade-is-light, true);
  --color-notice-info-major-shade:var(--draft-color-notice-info-major-shade, #acd4ff);
  --color-notice-info-major-shade-is-light:var(--draft-color-notice-info-major-shade-is-light, true);
  --color-notice-info-half-shade:var(--draft-color-notice-info-half-shade, #006fe6);
  --color-notice-info-half-shade-is-dark:var(--draft-color-notice-info-half-shade-is-dark, true);
  --font-family:var(--draft-font-family, 'Istok Web');
  --font-size:var(--draft-font-size, 16px);
  --font-family-heading:var(--draft-font-family-heading, 'Istok Web');
  --heading-ratio:var(--draft-heading-ratio, 1.5);
  --heading-weight:var(--draft-heading-weight, 500);
  --collection_count:var(--draft-collection_count, 12);
  --search_count:var(--draft-search_count, 12);
  --blog_size:var(--draft-blog_size, 8);
  --product_not_available:var(--draft-product_not_available, shown);
  --layout-content-max-width:var(--draft-layout-content-max-width, 1440px);
  --delta_sidebar:var(--draft-delta_sidebar, 1);
  --type_sidebar:var(--draft-type_sidebar, sticky);
  --sidebar_index_show:var(--draft-sidebar_index_show, false);
  --sidebar_index_position:var(--draft-sidebar_index_position, left);
  --sidebar_collection_show:var(--draft-sidebar_collection_show, false);
  --sidebar_collection_position:var(--draft-sidebar_collection_position, right);
  --sidebar_cart_show:var(--draft-sidebar_cart_show, false);
  --sidebar_cart_position:var(--draft-sidebar_cart_position, left);
  --sidebar_product_show:var(--draft-sidebar_product_show, false);
  --sidebar_product_position:var(--draft-sidebar_product_position, left);
  --sidebar_blog_show:var(--draft-sidebar_blog_show, false);
  --sidebar_blog_position:var(--draft-sidebar_blog_position, left);
  --sidebar_article_show:var(--draft-sidebar_article_show, false);
  --sidebar_article_position:var(--draft-sidebar_article_position, left);
  --sidebar_page_show:var(--draft-sidebar_page_show, false);
  --sidebar_page_position:var(--draft-sidebar_page_position, left);
  --sidebar_compare_show:var(--draft-sidebar_compare_show, false);
  --sidebar_compare_position:var(--draft-sidebar_compare_position, left);
  --sidebar_search_show:var(--draft-sidebar_search_show, false);
  --sidebar_search_position:var(--draft-sidebar_search_position, left);
  --feedback_captcha_enabled:var(--draft-feedback_captcha_enabled, true);
  --favorite_enabled:var(--draft-favorite_enabled, false);
  --compare_enabled:var(--draft-compare_enabled, true); }

/* line 4, theme.scss */
.outside-widgets .delete-widget-link {
  display: none; }

/* line 8, theme.scss */
.outside-widgets .add-widget-link {
  display: none; }

/* line 12, theme.scss */
[data-fixed-panels] .delete-widget-link {
  display: none; }

@media (max-width: 768px) {
  /* line 27, theme.scss */
  [style*="--is-editor:true"] .outside-widgets {
    display: none; }

  /* line 30, theme.scss */
  .edit-widget-buttons .widget-name {
    display: none !important; }

  /* line 33, theme.scss */
  [data-fixed-panels] [data-widget-add] {
    display: none; } }
/* Dentistry landing: Мастерская улыбок */
/* line 39, theme.scss */
[data-theme-template="index"] .page_layout > header,
[data-theme-template="index"] .page_layout > footer,
[data-theme-template="index"] aside {
  display: none !important; }

/* line 42, theme.scss */
[data-theme-template="index"] main {
  width: 100%;
  min-width: 0; }

/* line 43, theme.scss */
[data-theme-template="index"] .page_layout {
  display: block !important;
  max-width: none !important;
  padding: 0 !important; }

/* line 45, theme.scss */
.dentistry-page {
  --dent-green: #3f7f31;
  --dent-green-dark: #275b21;
  --dent-green-soft: #eaf4e6;
  --dent-mint: #f4faf1;
  --dent-ink: #172017;
  --dent-muted: #657165;
  --dent-line: rgba(63,127,49,.18);
  --dent-shadow: 0 24px 70px rgba(40,65,35,.13);
  --dent-radius: 28px;
  font-family: "Istok Web", Arial, sans-serif;
  color: var(--dent-ink);
  background: radial-gradient(circle at 85% 10%, rgba(63, 127, 49, 0.12), rgba(0, 0, 0, 0) 34rem), linear-gradient(180deg, #fff 0%, #f7fbf5 38%, #fff 100%);
  overflow: hidden;
  position: relative; }

/* line 63, theme.scss */
.dentistry-page * {
  box-sizing: border-box; }

/* line 64, theme.scss */
.dentistry-page a {
  color: inherit;
  text-decoration: none; }

/* line 65, theme.scss */
.dentistry-page img {
  display: block;
  max-width: 100%; }

/* line 66, theme.scss */
.dentistry-bg-mark--left {
  position: absolute;
  inset: 5rem auto auto -8rem;
  width: 23rem;
  height: 47rem;
  object-fit: cover;
  opacity: .075;
  filter: grayscale(1);
  pointer-events: none;
  border-radius: 0 16rem 16rem 0; }

/* line 68, theme.scss */
.dentistry-header {
  position: sticky;
  top: 0;
  z-index: 40;
  min-height: 82px;
  padding: 14px clamp(18px, 4vw, 64px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background: rgba(255, 255, 255, 0.82);
  backdrop-filter: blur(18px);
  border-bottom: 1px solid rgba(63, 127, 49, 0.09); }

/* line 69, theme.scss */
.dentistry-logo {
  display: flex;
  align-items: center;
  gap: 13px;
  min-width: 220px; }

/* line 70, theme.scss */
.dentistry-logo img {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  box-shadow: 0 8px 24px rgba(63, 127, 49, 0.16); }

/* line 71, theme.scss */
.dentistry-logo b {
  display: block;
  line-height: 1.05;
  font-size: 16px; }

/* line 72, theme.scss */
.dentistry-logo small {
  display: block;
  margin-top: 3px;
  color: var(--dent-muted);
  font-size: 12px; }

/* line 73, theme.scss */
.dentistry-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 26px;
  font-weight: 700;
  font-size: 15px; }

/* line 74, theme.scss */
.dentistry-nav a {
  padding: 9px 0;
  position: relative; }

/* line 75, theme.scss */
.dentistry-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 4px;
  width: 0;
  height: 2px;
  border-radius: 99px;
  background: var(--dent-green);
  transition: .25s ease; }

/* line 76, theme.scss */
.dentistry-nav a:hover::after {
  width: 100%; }

/* line 77, theme.scss */
.dentistry-header__actions {
  display: flex;
  align-items: center;
  gap: 14px; }

/* line 78, theme.scss */
.dentistry-phone {
  font-weight: 800;
  white-space: nowrap; }

/* line 79, theme.scss */
.dentistry-burger {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid var(--dent-line);
  border-radius: 14px;
  background: white;
  padding: 11px; }

/* line 80, theme.scss */
.dentistry-burger span {
  display: block;
  height: 2px;
  background: var(--dent-green-dark);
  border-radius: 99px;
  margin: 5px 0; }

/* line 82, theme.scss */
.dentistry-main {
  max-width: 1360px;
  margin: 0 auto;
  padding: 0 clamp(16px, 3vw, 44px); }

/* line 83, theme.scss */
.dentistry-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 52px;
  padding: 0 24px;
  border-radius: 17px;
  background: linear-gradient(135deg, var(--dent-green), #5e9a48);
  color: white!important;
  font-weight: 800;
  border: 1px solid rgba(63, 127, 49, 0.15);
  box-shadow: 0 16px 34px rgba(63, 127, 49, 0.24);
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }

/* line 84, theme.scss */
.dentistry-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 42px rgba(63, 127, 49, 0.28); }

/* line 85, theme.scss */
.dentistry-btn--ghost {
  background: rgba(255, 255, 255, 0.78);
  color: var(--dent-green-dark) !important;
  box-shadow: 0 12px 28px rgba(40, 65, 35, 0.08);
  border-color: rgba(63, 127, 49, 0.24); }

/* line 86, theme.scss */
.dentistry-btn--small {
  min-height: 44px;
  padding: 0 20px;
  border-radius: 14px; }

/* line 88, theme.scss */
.dentistry-hero {
  min-height: 730px;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(480px, 1.1fr);
  gap: 44px;
  align-items: center;
  padding: 74px 0 48px;
  position: relative; }

/* line 89, theme.scss */
.dentistry-eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--dent-green);
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: 13px; }

/* line 90, theme.scss */
.dentistry-eyebrow span {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--dent-green);
  box-shadow: 0 0 0 8px rgba(63, 127, 49, 0.12); }

/* line 91, theme.scss */
.dentistry-hero h1, .dentistry-section-head h2 {
  font-family: Georgia, "Times New Roman", serif;
  line-height: .95;
  letter-spacing: -.04em;
  margin: 0;
  color: var(--dent-ink); }

/* line 92, theme.scss */
.dentistry-hero h1 {
  margin-top: 24px;
  font-size: clamp(58px, 7vw, 116px);
  max-width: 650px; }

/* line 93, theme.scss */
.dentistry-hero h1 span {
  display: block;
  color: var(--dent-green); }

/* line 94, theme.scss */
.dentistry-lead {
  max-width: 570px;
  margin: 25px 0 0;
  color: #455045;
  font-size: 20px;
  line-height: 1.55; }

/* line 95, theme.scss */
.dentistry-hero__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 32px; }

/* line 96, theme.scss */
.dentistry-trustline {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 38px;
  max-width: 670px; }

/* line 97, theme.scss */
.dentistry-trustline div {
  min-height: 92px;
  padding: 16px 14px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--dent-line);
  border-radius: 22px;
  box-shadow: 0 16px 35px rgba(40, 65, 35, 0.06); }

/* line 98, theme.scss */
.dentistry-trustline i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--dent-green-soft);
  color: var(--dent-green);
  font-style: normal;
  font-weight: 900; }

/* line 99, theme.scss */
.dentistry-trustline b, .dentistry-trustline small {
  display: block; }

/* line 100, theme.scss */
.dentistry-trustline b {
  margin-top: 9px;
  font-size: 14px; }

/* line 101, theme.scss */
.dentistry-trustline small {
  color: var(--dent-muted);
  font-size: 12px;
  margin-top: 3px; }

/* line 102, theme.scss */
.dentistry-hero__visual {
  position: relative;
  min-height: 650px; }

/* line 103, theme.scss */
.dentistry-hero__visual::before {
  content: "";
  position: absolute;
  inset: -22px -22px 70px 62px;
  border: 14px solid rgba(63, 127, 49, 0.14);
  border-left-color: rgba(63, 127, 49, 0.33);
  border-radius: 50% 0 0 50%;
  transform: rotate(-2deg); }

/* line 104, theme.scss */
.dentistry-hero__visual > img {
  position: relative;
  width: 100%;
  height: 650px;
  object-fit: cover;
  border-radius: 54px 0 0 54px;
  box-shadow: var(--dent-shadow); }

/* line 105, theme.scss */
.dentistry-hero-card {
  position: absolute;
  z-index: 2;
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255, 255, 255, 0.9);
  box-shadow: 0 20px 54px rgba(33, 54, 29, 0.14);
  border-radius: 22px;
  padding: 18px 20px;
  max-width: 250px; }

/* line 106, theme.scss */
.dentistry-hero-card b, .dentistry-hero-card strong {
  display: block;
  color: var(--dent-green-dark); }

/* line 107, theme.scss */
.dentistry-hero-card span {
  display: block;
  color: var(--dent-muted);
  margin-top: 4px;
  line-height: 1.35; }

/* line 108, theme.scss */
.dentistry-hero-card--rating {
  left: 0;
  top: 54px; }

/* line 109, theme.scss */
.dentistry-hero-card--license {
  right: 20px;
  bottom: 42px; }

/* line 110, theme.scss */
.dentistry-floating-call {
  position: fixed;
  right: 28px;
  bottom: 28px;
  z-index: 42;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--dent-green), #5e9a48);
  color: #fff!important;
  box-shadow: 0 18px 45px rgba(63, 127, 49, 0.35);
  font-size: 30px; }

/* line 111, theme.scss */
.dentistry-floating-call::after {
  content: "";
  position: absolute;
  inset: -8px;
  border-radius: inherit;
  border: 1px solid rgba(63, 127, 49, 0.25);
  animation: dentistryPulse 1.9s infinite; }

@keyframes dentistryPulse {
  0% {
    transform: scale(0.9);
    opacity: .8; }
  100% {
    transform: scale(1.25);
    opacity: 0; } }
/* line 114, theme.scss */
.dentistry-panel, .dentistry-about, .dentistry-steps, .dentistry-appointment, .dentistry-contacts {
  margin: 46px 0; }

/* line 115, theme.scss */
.dentistry-panel {
  padding: 58px clamp(18px, 3vw, 42px);
  background: rgba(255, 255, 255, 0.78);
  border: 1px solid var(--dent-line);
  border-radius: var(--dent-radius);
  box-shadow: 0 18px 65px rgba(40, 65, 35, 0.08); }

/* line 116, theme.scss */
.dentistry-section-head span {
  display: block;
  color: var(--dent-green);
  text-transform: uppercase;
  letter-spacing: .1em;
  font-size: 12px;
  font-weight: 900;
  margin-bottom: 10px; }

/* line 117, theme.scss */
.dentistry-section-head h2 {
  font-size: clamp(36px, 4.2vw, 64px); }

/* line 118, theme.scss */
.dentistry-section-head p {
  max-width: 650px;
  margin: 18px 0 0;
  color: var(--dent-muted);
  line-height: 1.6;
  font-size: 17px; }

/* line 119, theme.scss */
.dentistry-section-head--center {
  text-align: center; }

/* line 120, theme.scss */
.dentistry-section-head--center p {
  margin-left: auto;
  margin-right: auto; }

/* line 121, theme.scss */
.dentistry-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin: 28px 0 26px; }

/* line 122, theme.scss */
.dentistry-tabs button {
  border: 1px solid var(--dent-line);
  background: #fff;
  color: var(--dent-green-dark);
  border-radius: 999px;
  min-height: 42px;
  padding: 0 20px;
  font-weight: 800;
  cursor: pointer;
  transition: .2s ease; }

/* line 123, theme.scss */
.dentistry-tabs button.is-active, .dentistry-tabs button:hover {
  background: var(--dent-green);
  color: #fff;
  box-shadow: 0 12px 28px rgba(63, 127, 49, 0.22); }

/* line 124, theme.scss */
.dentistry-service-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px; }

/* line 125, theme.scss */
.dentistry-service-card {
  min-height: 270px;
  padding: 24px 20px;
  border-radius: 24px;
  border: 1px solid rgba(63, 127, 49, 0.13);
  background: linear-gradient(180deg, #fff, #fbfdf9);
  box-shadow: 0 12px 30px rgba(40, 65, 35, 0.06);
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  position: relative;
  overflow: hidden; }

/* line 126, theme.scss */
.dentistry-service-card::after {
  content: "";
  position: absolute;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  right: -58px;
  top: -58px;
  background: rgba(63, 127, 49, 0.08);
  transition: .22s ease; }

/* line 127, theme.scss */
.dentistry-service-card:hover {
  transform: translateY(-8px);
  border-color: rgba(63, 127, 49, 0.35);
  box-shadow: 0 24px 55px rgba(40, 65, 35, 0.12); }

/* line 128, theme.scss */
.dentistry-service-card:hover::after {
  transform: scale(1.3); }

/* line 129, theme.scss */
.dentistry-card-icon {
  width: 70px;
  height: 70px;
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--dent-green);
  background: var(--dent-green-soft);
  font-size: 34px;
  font-weight: 900; }

/* line 130, theme.scss */
.dentistry-service-card h3 {
  margin: 22px 0 10px;
  font-size: 18px;
  line-height: 1.25; }

/* line 131, theme.scss */
.dentistry-service-card p {
  color: var(--dent-muted);
  line-height: 1.45;
  margin: 0;
  font-size: 14px; }

/* line 132, theme.scss */
.dentistry-service-card a {
  display: inline-flex;
  margin-top: 18px;
  color: var(--dent-green-dark);
  font-weight: 900; }

/* line 133, theme.scss */
.dentistry-service-card.is-hidden {
  display: none; }

/* line 135, theme.scss */
.dentistry-about {
  display: grid;
  grid-template-columns: minmax(320px, 0.9fr) minmax(520px, 1.1fr);
  gap: 44px;
  align-items: center;
  padding: 64px clamp(18px, 3vw, 42px);
  border-radius: var(--dent-radius);
  background: linear-gradient(135deg, rgba(234, 244, 230, 0.9), rgba(255, 255, 255, 0.8));
  border: 1px solid var(--dent-line); }

/* line 136, theme.scss */
.dentistry-feature-list {
  display: grid;
  gap: 18px;
  margin: 30px 0 28px; }

/* line 137, theme.scss */
.dentistry-feature-list div {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 0 14px;
  align-items: start; }

/* line 138, theme.scss */
.dentistry-feature-list i {
  grid-row: span 2;
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: white;
  color: var(--dent-green);
  border: 1px solid var(--dent-line);
  display: flex;
  align-items: center;
  justify-content: center;
  font-style: normal;
  font-weight: 900;
  box-shadow: 0 12px 28px rgba(40, 65, 35, 0.07); }

/* line 139, theme.scss */
.dentistry-feature-list b {
  font-size: 17px; }

/* line 140, theme.scss */
.dentistry-feature-list span {
  color: var(--dent-muted);
  line-height: 1.45;
  margin-top: 5px; }

/* line 141, theme.scss */
.dentistry-gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  position: relative; }

/* line 142, theme.scss */
.dentistry-gallery figure {
  margin: 0;
  overflow: hidden;
  border-radius: 24px;
  box-shadow: 0 16px 45px rgba(40, 65, 35, 0.12);
  background: #fff; }

/* line 143, theme.scss */
.dentistry-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover; }

/* line 144, theme.scss */
.dentistry-gallery__big {
  min-height: 250px; }

/* line 145, theme.scss */
.dentistry-gallery__wide {
  grid-column: span 2;
  height: 285px; }

/* line 146, theme.scss */
.dentistry-gallery__flower {
  position: absolute;
  width: 245px;
  height: 220px;
  left: 50%;
  bottom: -38px;
  transform: translateX(-50%);
  border: 8px solid white; }

/* line 148, theme.scss */
.dentistry-steps {
  padding: 30px 0; }

/* line 149, theme.scss */
.dentistry-step-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 28px; }

/* line 150, theme.scss */
.dentistry-step-card {
  min-height: 170px;
  border: 1px solid var(--dent-line);
  border-radius: 24px;
  background: #fff;
  padding: 24px;
  box-shadow: 0 12px 30px rgba(40, 65, 35, 0.06);
  position: relative; }

/* line 151, theme.scss */
.dentistry-step-card::after {
  content: "→";
  position: absolute;
  right: -18px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--dent-green);
  font-size: 26px;
  font-weight: 900; }

/* line 152, theme.scss */
.dentistry-step-card:last-child::after {
  display: none; }

/* line 153, theme.scss */
.dentistry-step-card em {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: var(--dent-green);
  color: #fff;
  border-radius: 50%;
  font-style: normal;
  font-weight: 900; }

/* line 154, theme.scss */
.dentistry-step-card b {
  display: block;
  margin-top: 18px;
  font-size: 20px; }

/* line 155, theme.scss */
.dentistry-step-card span {
  display: block;
  color: var(--dent-muted);
  line-height: 1.45;
  margin-top: 8px; }

/* line 157, theme.scss */
.dentistry-price-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  margin-top: 28px; }

/* line 158, theme.scss */
.dentistry-price-card {
  min-height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 24px 20px;
  border-radius: 24px;
  background: #fff;
  border: 1px solid var(--dent-line);
  box-shadow: 0 12px 30px rgba(40, 65, 35, 0.06); }

/* line 159, theme.scss */
.dentistry-price-card small {
  color: var(--dent-green);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em; }

/* line 160, theme.scss */
.dentistry-price-card b {
  font-size: 17px;
  line-height: 1.28;
  margin: 16px 0; }

/* line 161, theme.scss */
.dentistry-price-card strong {
  color: var(--dent-green);
  font-size: 36px;
  line-height: 1; }

/* line 162, theme.scss */
.dentistry-note {
  text-align: center;
  color: var(--dent-muted);
  margin: 22px 0 0; }

/* line 163, theme.scss */
.dentistry-docs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 22px; }

/* line 164, theme.scss */
.dentistry-docs a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 999px;
  border: 1px solid var(--dent-line);
  background: var(--dent-mint);
  color: var(--dent-green-dark);
  font-weight: 800; }

/* line 166, theme.scss */
.dentistry-appointment {
  display: grid;
  grid-template-columns: 1fr .8fr;
  gap: 22px;
  padding: 52px clamp(18px, 3vw, 42px);
  border-radius: var(--dent-radius);
  background: linear-gradient(135deg, var(--dent-green-dark), var(--dent-green));
  color: #fff;
  box-shadow: var(--dent-shadow); }

/* line 167, theme.scss */
.dentistry-appointment .dentistry-section-head span, .dentistry-appointment .dentistry-section-head h2, .dentistry-appointment .dentistry-section-head p {
  color: #fff; }

/* line 168, theme.scss */
.dentistry-appointment .dentistry-section-head p {
  opacity: .86; }

/* line 169, theme.scss */
.dentistry-appointment__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 26px; }

/* line 170, theme.scss */
.dentistry-appointment .dentistry-btn {
  background: #fff;
  color: var(--dent-green-dark) !important;
  box-shadow: none; }

/* line 171, theme.scss */
.dentistry-appointment .dentistry-btn--ghost {
  background: transparent;
  color: #fff!important;
  border-color: rgba(255, 255, 255, 0.55); }

/* line 172, theme.scss */
.dentistry-appointment-card {
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.25);
  padding: 26px;
  backdrop-filter: blur(14px); }

/* line 173, theme.scss */
.dentistry-appointment-card b {
  display: block;
  font-size: 21px;
  margin-bottom: 12px; }

/* line 174, theme.scss */
.dentistry-appointment-card ul {
  margin: 0;
  padding-left: 20px;
  line-height: 1.8; }

/* line 176, theme.scss */
.dentistry-contacts {
  display: grid;
  grid-template-columns: .75fr 1.25fr;
  gap: 20px;
  align-items: stretch; }

/* line 177, theme.scss */
.dentistry-contact-card, .dentistry-map-card {
  min-height: 390px;
  border-radius: var(--dent-radius);
  border: 1px solid var(--dent-line);
  background: #fff;
  box-shadow: 0 16px 50px rgba(40, 65, 35, 0.08); }

/* line 178, theme.scss */
.dentistry-contact-card {
  padding: 42px; }

/* line 179, theme.scss */
.dentistry-contact-card p {
  color: var(--dent-muted);
  line-height: 1.6;
  font-size: 17px; }

/* line 180, theme.scss */
.dentistry-contact-card b {
  color: var(--dent-ink); }

/* line 181, theme.scss */
.dentistry-contact-card .dentistry-btn {
  margin-top: 12px; }

/* line 182, theme.scss */
.dentistry-map-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.75) 0 2px, transparent 2px 92px), linear-gradient(0deg, rgba(255, 255, 255, 0.75) 0 2px, transparent 2px 92px), radial-gradient(circle at 56% 52%, rgba(63, 127, 49, 0.18), rgba(0, 0, 0, 0) 13rem), linear-gradient(135deg, #eef2e8, #f9f4e8);
  background-size: 92px 92px, 92px 92px, auto, auto; }

/* line 187, theme.scss */
.dentistry-map-card::before {
  content: "";
  position: absolute;
  left: 9%;
  top: 0;
  width: 90px;
  height: 120%;
  background: rgba(126, 170, 206, 0.22);
  transform: rotate(8deg);
  border-radius: 99px; }

/* line 188, theme.scss */
.dentistry-map-card__pin {
  position: absolute;
  left: 50%;
  top: 47%;
  transform: translate(-50%, -50%);
  padding: 18px 24px 18px 54px;
  background: white;
  border-radius: 999px;
  box-shadow: 0 18px 50px rgba(40, 65, 35, 0.15);
  font-weight: 900;
  color: var(--dent-green-dark); }

/* line 189, theme.scss */
.dentistry-map-card__pin::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 50% 50% 50% 0;
  background: var(--dent-green);
  transform: translateY(-50%) rotate(-45deg); }

/* line 191, theme.scss */
.dentistry-footer {
  margin-top: 54px;
  background: linear-gradient(180deg, #fff, var(--dent-mint));
  border-top: 1px solid var(--dent-line); }

/* line 192, theme.scss */
.dentistry-footer__top {
  max-width: 1360px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 90px 1fr auto;
  gap: 24px;
  align-items: center;
  padding: 34px clamp(18px, 3vw, 44px); }

/* line 193, theme.scss */
.dentistry-footer__top img {
  width: 78px;
  height: 78px;
  border-radius: 50%; }

/* line 194, theme.scss */
.dentistry-footer__top b {
  font-size: 19px; }

/* line 195, theme.scss */
.dentistry-footer__top p {
  margin: 6px 0 0;
  color: var(--dent-muted); }

/* line 196, theme.scss */
.dentistry-footer__links {
  display: flex;
  gap: 10px; }

/* line 197, theme.scss */
.dentistry-footer__links a {
  border: 1px solid var(--dent-line);
  border-radius: 999px;
  padding: 10px 14px;
  color: var(--dent-green-dark);
  font-weight: 800; }

/* line 198, theme.scss */
.dentistry-footer__bottom {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  padding: 16px clamp(18px, 3vw, 44px);
  background: var(--dent-green-dark);
  color: #fff;
  font-size: 14px; }

@media (max-width: 1100px) {
  /* line 201, theme.scss */
  .dentistry-header {
    gap: 12px; }

  /* line 202, theme.scss */
  .dentistry-nav {
    position: fixed;
    left: 16px;
    right: 16px;
    top: 82px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    background: white;
    padding: 18px;
    border: 1px solid var(--dent-line);
    border-radius: 20px;
    box-shadow: var(--dent-shadow); }

  /* line 203, theme.scss */
  .dentistry-nav.is-open {
    display: flex; }

  /* line 204, theme.scss */
  .dentistry-burger {
    display: block; }

  /* line 205, theme.scss */
  .dentistry-phone, .dentistry-header__actions .dentistry-btn {
    display: none; }

  /* line 206, theme.scss */
  .dentistry-hero, .dentistry-about, .dentistry-appointment, .dentistry-contacts {
    grid-template-columns: 1fr; }

  /* line 207, theme.scss */
  .dentistry-hero {
    min-height: auto;
    padding-top: 48px; }

  /* line 208, theme.scss */
  .dentistry-hero__visual, .dentistry-hero__visual > img {
    min-height: auto;
    height: auto; }

  /* line 209, theme.scss */
  .dentistry-hero__visual > img {
    border-radius: 34px; }

  /* line 210, theme.scss */
  .dentistry-hero__visual::before {
    inset: -14px;
    border-radius: 40px; }

  /* line 211, theme.scss */
  .dentistry-service-grid, .dentistry-price-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)); }

  /* line 212, theme.scss */
  .dentistry-step-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)); }

  /* line 213, theme.scss */
  .dentistry-step-card::after {
    display: none; } }
@media (max-width: 640px) {
  /* line 216, theme.scss */
  .dentistry-header {
    min-height: 70px;
    padding: 10px 14px; }

  /* line 217, theme.scss */
  .dentistry-logo {
    min-width: 0; }

  /* line 218, theme.scss */
  .dentistry-logo span {
    display: none; }

  /* line 219, theme.scss */
  .dentistry-logo img {
    width: 48px;
    height: 48px; }

  /* line 220, theme.scss */
  .dentistry-main {
    padding: 0 12px; }

  /* line 221, theme.scss */
  .dentistry-hero h1 {
    font-size: 52px; }

  /* line 222, theme.scss */
  .dentistry-lead {
    font-size: 17px; }

  /* line 223, theme.scss */
  .dentistry-trustline, .dentistry-service-grid, .dentistry-price-grid, .dentistry-step-grid {
    grid-template-columns: 1fr; }

  /* line 224, theme.scss */
  .dentistry-panel, .dentistry-about, .dentistry-appointment, .dentistry-contact-card {
    padding: 30px 18px;
    border-radius: 22px; }

  /* line 225, theme.scss */
  .dentistry-gallery {
    grid-template-columns: 1fr; }

  /* line 226, theme.scss */
  .dentistry-gallery__wide {
    grid-column: auto;
    height: 220px; }

  /* line 227, theme.scss */
  .dentistry-gallery__flower {
    position: relative;
    left: auto;
    bottom: auto;
    transform: none;
    width: 100%;
    height: 180px; }

  /* line 228, theme.scss */
  .dentistry-footer__top {
    grid-template-columns: 1fr; }

  /* line 229, theme.scss */
  .dentistry-footer__bottom {
    flex-direction: column; }

  /* line 230, theme.scss */
  .dentistry-floating-call {
    width: 58px;
    height: 58px;
    right: 16px;
    bottom: 16px; } }
