body.home main > section.section { padding-block: 64px !important; }
body.home .hero > .hero-grid { padding-bottom: 64px !important; }
@media (min-width: 769px) {
  body.home footer.social-footer:not(.mobile-site-footer) { padding-top: 64px !important; }
}
@media (min-width: 769px) and (max-width: 1199px) {
  body.home main > section.section { padding-block: 52px !important; }
  body.home .hero > .hero-grid { padding-bottom: 52px !important; }
  body.home footer.social-footer:not(.mobile-site-footer) { padding-top: 52px !important; }
}
@media (max-width: 768px) {
  body.home main > section.section { padding-block: 40px !important; }
  body.home .hero > .hero-grid { padding-bottom: 40px !important; }
}

@media (min-width: 1101px) and (max-width: 1599px) {
  #npd-unified-header .brand-text { display: none; }
  #npd-unified-header .brand { min-width: 0; }
}

#npd-unified-header .npd-mobile-menu-toggle { display: none; }
#npd-unified-header .nav-dropdown { position: relative; gap: 0; }
#npd-unified-header .npd-submenu-toggle {
  display: inline-flex; align-items: center; justify-content: center;
  width: 32px; min-width: 32px; height: 44px; padding: 0;
  border: 0; background: transparent; color: inherit; cursor: pointer; font: inherit;
}
#npd-unified-header a:focus-visible,
#npd-unified-header button:focus-visible,
body.home main a:focus-visible { outline: 2px solid #9a2424; outline-offset: 3px; }
#npd-unified-header .dropdown-menu { display: none !important; }
#npd-unified-header .nav-dropdown.is-open .dropdown-menu {
  display: block !important; opacity: 1; visibility: visible; pointer-events: auto;
}
@media (min-width: 1101px) {
  #npd-unified-header .nav-dropdown.is-open .dropdown-menu { transform: translateX(-50%) translateY(0); }
}
@media (min-width: 1101px) and (max-width: 1599px) {
  #npd-unified-header .nav-links { gap: 4px; font-size: 15px; }
  #npd-unified-header .nav-link { padding-left: 10px; padding-right: 10px; }
}
@media (max-width: 1100px) {
  #npd-unified-header { height: 64px !important; min-height: 64px !important; max-height: 64px !important; overflow: visible !important; }
  #npd-unified-header .nav {
    display: grid !important; grid-template-columns: minmax(0, 1fr) 44px !important;
    align-items: center !important; gap: 12px !important; position: relative !important;
    width: calc(100% - 24px) !important; max-width: 1450px !important;
    height: 64px !important; min-height: 64px !important; max-height: 64px !important;
    margin: 0 auto !important; padding: 5px 0 !important;
  }
  #npd-unified-header .brand { min-width: 0 !important; grid-column: 1; grid-row: 1; }
  #npd-unified-header .brand-logo { height: 54px !important; width: auto !important; max-width: 92px !important; object-fit: contain; }
  #npd-unified-header .npd-mobile-menu-toggle {
    grid-column: 2 !important; grid-row: 1 !important; display: flex !important;
    flex-direction: column !important; align-items: center !important; justify-content: center !important;
    gap: 5px !important; width: 44px !important; height: 44px !important; padding: 0 !important;
    border: 1px solid #ead8cc !important; border-radius: 8px !important; color: #7a1c1c !important; background: #fff8ef !important; cursor: pointer;
  }
  #npd-unified-header .npd-mobile-menu-toggle span,
  #npd-unified-header .npd-mobile-menu-toggle::before,
  #npd-unified-header .npd-mobile-menu-toggle::after { content: ''; width: 19px; height: 2px; display: block; background: currentColor; }
  #npd-unified-header .nav-links {
    position: absolute !important; top: calc(100% + 8px) !important; left: 0 !important; right: 0 !important;
    display: none !important; width: 100% !important; max-height: calc(100dvh - 88px) !important;
    overflow: hidden auto !important; flex-direction: column !important; align-items: stretch !important;
    justify-content: flex-start !important; gap: 6px !important; padding: 12px !important; margin: 0 !important;
    background: #fff8ef; border: 1px solid #ead8cc; border-radius: 8px; z-index: 1000;
    box-shadow: 0 12px 32px #0002;
  }
  #npd-unified-header.is-open .nav-links { display: flex !important; }
  #npd-unified-header .nav-link { min-height: 46px !important; height: auto !important; white-space: normal !important; padding: 13px 14px !important; font-size: 15px !important; line-height: 1.3 !important; }
  #npd-unified-header .nav-dropdown { display: grid !important; grid-template-columns: minmax(0, 1fr) 44px; width: 100% !important; height: auto !important; }
  #npd-unified-header .nav-dropdown::after { display: none; }
  #npd-unified-header .npd-submenu-toggle { width: 44px; height: 46px; grid-column: 2; grid-row: 1; }
  #npd-unified-header .dropdown-menu {
    grid-column: 1 / -1; position: static !important; transform: none !important;
    width: 100% !important; min-width: 0 !important; margin: 0 !important; padding: 6px !important;
    box-shadow: none !important; opacity: 1 !important; visibility: visible !important;
  }
  #npd-unified-header .dropdown-item { white-space: normal; }
}
body.home .remedy-visual { display: flex; flex-direction: column; padding: 0; min-height: 0; }
body.home .remedy-visual .content { padding: 24px; order: 2; }
body.home .remedy-visual img { position: static; display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; opacity: 1; order: 1; }
body.home .remedy-visual::after { display: none; }
body.home .remedy-visual .info a { display: block; text-decoration: underline; text-underline-offset: 3px; }
body.home .remedy-visual .info a + a { margin-top: 10px; }
body.home .list a { display: block; text-decoration: underline; text-underline-offset: 3px; }
body.home .npd-story-link { display: inline-block; margin-top: 16px; text-decoration: underline; text-underline-offset: 3px; }
body.page-id-8 #cau-chuyen-noi-bat article.card:not([hidden]) { display: flex; flex-direction: column; }
body.page-id-8 #cau-chuyen-noi-bat .story-img { flex-shrink: 0; }
body.page-id-8 .npd-patient-story-link {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; flex: 0 0 44px; align-self: flex-end;
  margin-top: auto; border-radius: 50%; color: #941e22;
  font-size: 0 !important; line-height: 0; text-decoration: none;
}
body.page-id-8 .npd-patient-story-link::after {
  content: ""; display: block; width: 25px; height: 25px; background: currentColor;
  -webkit-mask: url('icons/arrow-right.svg') center / contain no-repeat;
  mask: url('icons/arrow-right.svg') center / contain no-repeat;
}
body.page-id-8 .npd-patient-story-link:is(:hover, :focus-visible) { background: #fff0df; }
body.page-id-8 .npd-patient-story-link:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
body.home .npd-story-card {
  display: flex; flex-direction: column; padding: 0 !important;
  min-height: 0 !important; overflow: hidden;
}
body.home .npd-story-card > img {
  display: block; width: 100%; height: auto; aspect-ratio: 1 / 1;
  object-fit: cover; object-position: center; flex: none;
  outline: 2px solid rgba(178, 125, 67, .65); outline-offset: -2px;
}
body.home .npd-story-copy { display: flex; flex-direction: column; flex: 1; padding: 24px; }
body.home .npd-story-copy h3 { font-size: 28px; line-height: 1.3; margin: 0 0 24px; }
body.home .npd-story-copy .npd-story-link {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; flex: 0 0 44px;
  margin-top: auto; align-self: flex-end; border-radius: 50%;
  color: #941e22; text-decoration: none;
  transition: background-color 180ms ease;
}
body.home .npd-story-arrow {
  display: block; width: 25px; height: 25px; background: currentColor;
  -webkit-mask: url('icons/arrow-right.svg') center / contain no-repeat;
  mask: url('icons/arrow-right.svg') center / contain no-repeat;
  transition: transform 180ms ease;
}
body.home .npd-story-copy .npd-story-link:is(:hover, :focus-visible) { background: #fff0df; }
body.home .npd-story-link:is(:hover, :focus-visible) .npd-story-arrow { transform: translateX(3px); }
@media (prefers-reduced-motion: reduce) {
  body.home .npd-story-copy .npd-story-link,
  body.home .npd-story-arrow { transition: none; }
  body.home .npd-story-link:is(:hover, :focus-visible) .npd-story-arrow { transform: none; }
}
@media (max-width: 768px) {
  body.home .npd-story-copy { padding: 20px; }
}
body.home .hero-actions .btn,
body.home .hero-actions .btn span,
body.home .home-treatment-card .pill { font-weight: 500 !important; }

body.home .home-team-photo img { aspect-ratio: 5 / 3; object-fit: cover; object-position: center bottom; }
body.home .home-space-grid .home-photo { position: relative; align-self: start; }
body.home .home-space-grid .home-photo > figcaption {
  position: absolute; right: 12px; bottom: 12px; z-index: 1;
  max-width: calc(100% - 24px); margin: 0; padding: 6px 10px;
  color: #fff; background: rgba(24, 24, 24, .76); border-radius: 4px;
  font-size: 14px; line-height: 1.4; text-align: right;
}
body.home .home-treatment-card > img[data-npd-image="image-110"],
body.home .home-treatment-card > img[data-npd-image="image-111"] { aspect-ratio: 3 / 2; object-position: center; }
body.home .home-intro-layout .card { container-type: inline-size; }
body.home .npd-intro-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.home .npd-intro-heading h3 { margin: 0 !important; min-width: 0; font-size: 24px; line-height: 1.3; white-space: nowrap; }
body.home .npd-intro-icon,
body.page-id-11 .npd-contact-channel-icon,
body.page-id-11 .npd-contact-info-icon,
body.page-id-11 .npd-contact-social-icon,
body.page-id-7 .npd-guide-topic-icon,
body.page-id-5 .npd-remedy-guidance-icon,
body.page-id-6 .npd-service-choice-icon,
body.page-id-6 .npd-service-care-icon,
body.page-id-6 .npd-service-method-icon,
body.page-id-6 .npd-service-treatment-icon,
body.page-id-9 .npd-about-summary-icon,
body.page-id-9 .npd-about-space-icon,
body.page-id-9 .npd-about-treatment-icon {
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px;
  width: 44px; height: 44px; color: #941e22; background: #fff5e9;
  border: 1px solid #ebc29a; border-radius: 50%;
}
body.home .npd-intro-icon::before,
body.page-id-11 .npd-contact-channel-icon::before,
body.page-id-11 .npd-contact-info-icon::before,
body.page-id-11 .npd-contact-social-icon::before,
body.page-id-7 .npd-guide-topic-icon::before,
body.page-id-5 .npd-remedy-guidance-icon::before,
body.page-id-6 .npd-service-choice-icon::before,
body.page-id-6 .npd-service-care-icon::before,
body.page-id-6 .npd-service-method-icon::before,
body.page-id-6 .npd-service-treatment-icon::before,
body.page-id-9 .npd-about-summary-icon::before,
body.page-id-9 .npd-about-space-icon::before,
body.page-id-9 .npd-about-treatment-icon::before,
body.page-id-9 .npd-about-approach-icon::before {
  content: ""; width: 25px; height: 25px; background: currentColor;
  -webkit-mask: var(--npd-icon) center / contain no-repeat;
  mask: var(--npd-icon) center / contain no-repeat;
}
.npd-icon-leaf { --npd-icon: url('icons/leaf.svg'); }
.npd-icon-house-heart { --npd-icon: url('icons/house-heart.svg'); }
.npd-icon-footprints { --npd-icon: url('icons/footprints.svg'); }
.npd-icon-sparkles { --npd-icon: url('icons/sparkles.svg'); }
.npd-icon-clipboard-check { --npd-icon: url('icons/clipboard-check.svg'); }
.npd-icon-stethoscope { --npd-icon: url('icons/stethoscope.svg'); }
.npd-icon-sliders-horizontal { --npd-icon: url('icons/sliders-horizontal.svg'); }
.npd-icon-heart-handshake { --npd-icon: url('icons/heart-handshake.svg'); }
.npd-icon-bone { --npd-icon: url('icons/bone.svg'); }
.npd-icon-knee { --npd-icon: url('icons/knee.svg'); }
.npd-icon-spine { --npd-icon: url('icons/spine.svg'); }
.npd-icon-moon-star { --npd-icon: url('icons/moon-star.svg'); }
.npd-icon-shield-check { --npd-icon: url('icons/shield-check.svg'); }
.npd-icon-target { --npd-icon: url('icons/target.svg'); }
.npd-icon-hand { --npd-icon: url('icons/hand.svg'); }
.npd-icon-person-standing { --npd-icon: url('icons/person-standing.svg'); }
.npd-icon-salad { --npd-icon: url('icons/salad.svg'); }
.npd-icon-heart-pulse { --npd-icon: url('icons/heart-pulse.svg'); }
.npd-icon-wind { --npd-icon: url('icons/wind.svg'); }
.npd-icon-phone { --npd-icon: url('icons/phone.svg'); }
.npd-icon-map-pin { --npd-icon: url('icons/map-pin.svg'); }
.npd-icon-clock { --npd-icon: url('icons/clock.svg'); }
body.page-id-11 :is(.npd-contact-info-card, .npd-contact-social-card) { container-type: inline-size; }
body.page-id-11 :is(.npd-contact-info-heading, .npd-contact-social-heading) { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.page-id-11 :is(.npd-contact-info-heading, .npd-contact-social-heading) h3 { margin: 0 !important; min-width: 0; font-size: 24px !important; line-height: 1.3; text-wrap: balance; }
@container (max-width: 320px) {
  body.page-id-11 :is(.npd-contact-info-heading, .npd-contact-social-heading) { gap: 10px; }
  body.page-id-11 :is(.npd-contact-info-heading, .npd-contact-social-heading) h3 { font-size: 22px !important; }
  body.page-id-11 :is(.npd-contact-info-icon, .npd-contact-social-icon) { width: 40px; height: 40px; flex-basis: 40px; }
}
.npd-icon-brand-zalo { --npd-icon: url('icons/brand-zalo.svg'); }
.npd-icon-brand-facebook { --npd-icon: url('icons/brand-facebook.svg'); }
.npd-icon-brand-wechat { --npd-icon: url('icons/brand-wechat.svg'); }
.npd-icon-brand-youtube { --npd-icon: url('icons/brand-youtube.svg'); }
.npd-icon-brand-tiktok { --npd-icon: url('icons/brand-tiktok.svg'); }
body.page-id-11 .channel { container-type: inline-size; }
body.page-id-11 .npd-contact-channel-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.page-id-11 .npd-contact-channel-heading h3 { margin: 0 !important; min-width: 0; font-size: 28px !important; line-height: 1.3; white-space: nowrap; }
body.page-id-11 .npd-contact-channel-icon.npd-icon-brand-zalo::before { width: 30px; height: 30px; }
@media (min-width: 1081px) {
  body.page-id-11 #lien-he > .container.grid-2 { grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); }
}
@container (max-width: 220px) {
  body.page-id-11 .npd-contact-channel-heading { gap: 10px; }
  body.page-id-11 .npd-contact-channel-heading h3 { font-size: 24px !important; }
  body.page-id-11 .npd-contact-channel-icon { width: 40px; height: 40px; flex-basis: 40px; }
}
.npd-icon-message-circle { --npd-icon: url('icons/message-circle.svg'); }
.npd-icon-megaphone { --npd-icon: url('icons/megaphone.svg'); }
.npd-icon-messages-square { --npd-icon: url('icons/messages-square.svg'); }
body.page-id-7 .npd-guide-topic-icon { display: flex; margin-bottom: 18px; }
body.page-id-7 .cta .contact { align-self: start; align-content: start; }
body.page-id-7 .cta .contact > div { padding-block: 12px; }
body.page-id-7 .cta p[data-npd-edit="text-24"],
body.page-id-7 .cta .actions > .btn:is([data-npd-edit="text-27"], [data-npd-edit="text-28"]) {
  font-weight: 500 !important;
}
body.page-id-5 #lien-he .contact { align-self: start; align-content: start; }
body.page-id-5 #lien-he .contact > div { padding-block: 12px; }
body.page-id-5 #lien-he p[data-npd-edit="text-58"],
body.page-id-5 #lien-he .actions > .btn:is([data-npd-edit="text-61"], [data-npd-edit="text-62"], [data-npd-edit="text-63"]) {
  font-weight: 500 !important;
}
body.page-id-5 .npd-remedy-guidance-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.page-id-5 .npd-remedy-guidance-heading h3 {
  margin: 0 !important; min-width: 0; font-size: 24px !important;
  line-height: 1.3; white-space: normal; text-wrap: balance;
}
@media (max-width: 1199px) {
  body.page-id-5 .npd-remedy-guidance-heading h3 { font-size: 22px !important; }
  body.page-id-5 .npd-remedy-guidance-heading { gap: 10px; }
  body.page-id-5 .npd-remedy-guidance-icon { flex-basis: 38px; width: 38px; height: 38px; }
  body.page-id-5 .npd-remedy-guidance-icon::before { width: 22px; height: 22px; }
}
body.page-id-5 .remedy-summary-content {
  display: grid; grid-template-columns: max-content minmax(0, 1fr);
  grid-template-rows: auto auto; gap: 20px 14px; width: 100%; min-width: 0;
}
body.page-id-5 .remedy-summary-content > .num {
  grid-column: 1; grid-row: 1; margin: 0 !important; align-self: center;
}
body.page-id-5 .remedy-summary-content > h3 {
  grid-column: 2; grid-row: 1; align-self: center; min-width: 0;
  margin: 0 !important; white-space: normal; text-wrap: balance;
}
body.page-id-5 .remedy-summary-content > p {
  grid-column: 1 / -1; grid-row: 2; margin: 0 !important;
}
body.page-id-5 .grid-3:has([data-npd-edit="text-6"]) > .card {
  display: grid; grid-template-columns: max-content minmax(0, 1fr);
  grid-template-rows: auto 1fr; gap: 20px 12px;
}
body.page-id-5 .grid-3:has([data-npd-edit="text-6"]) > .card > .num {
  grid-column: 1; grid-row: 1; margin: 0 !important; align-self: center;
}
body.page-id-5 .grid-3:has([data-npd-edit="text-6"]) > .card > h3 {
  grid-column: 2; grid-row: 1; align-self: center;
  margin: 0 !important; min-width: 0; font-size: 24px !important;
  line-height: 1.3; white-space: normal; text-wrap: balance;
}
body.page-id-5 .grid-3:has([data-npd-edit="text-6"]) > .card > p {
  grid-column: 1 / -1; grid-row: 2; margin: 0;
}
@media (max-width: 768px) {
  body.page-id-5 .grid-3:has([data-npd-edit="text-6"]) > .card > h3 { font-size: 22px !important; }
}
body.page-id-6 .hero .actions > .btn:is([data-npd-edit="text-4"], [data-npd-edit="text-5"]),
body.page-id-6 #lien-he .actions > .btn:is([data-npd-edit="text-69"], [data-npd-edit="text-70"], [data-npd-edit="text-71"]) {
  font-weight: 500 !important;
}
@media (min-width: 1024px) {
  body.page-id-6 #lien-he > .container.grid-2 { grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); }
}
body.page-id-6 .warning:has(> p[data-npd-edit="text-64"]) > strong {
  display: block; margin: 0 0 10px; font-size: 18px;
  font-weight: 600; line-height: 1.4; text-align: left;
}
body.page-id-6 .warning:has(> p[data-npd-edit="text-64"]) > p {
  margin: 0 !important; line-height: 1.6 !important; text-align: left;
}
body.page-id-6 .warning:has(> p[data-npd-edit="text-64"]) > p + p { margin-top: 10px !important; }
@media (min-width: 901px) {
  body.page-id-6 p[data-npd-edit="text-12"] { max-width: none; white-space: nowrap; }
}
@media (min-width: 901px) and (max-width: 1199px) {
  body.page-id-6 p[data-npd-edit="text-12"] { font-size: 16px; }
}
@media (min-width: 901px) and (max-width: 999px) {
  body.page-id-6 p[data-npd-edit="text-12"] { font-size: 15px; }
}
body.page-id-6 :is(.npd-service-care-copy, .npd-service-method-card) { container-type: inline-size; }
body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) h3 {
  margin: 0 !important; min-width: 0; font-size: 24px !important;
  line-height: 1.3; white-space: nowrap !important;
}
@container (max-width: 380px) {
  body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) h3 { font-size: 22px !important; }
}
@container (max-width: 340px) {
  body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) h3 { font-size: 20px !important; }
}
@container (max-width: 300px) {
  body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) { gap: 10px; }
  body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) h3 { font-size: 18px !important; }
  body.page-id-6 :is(.npd-service-care-icon, .npd-service-method-icon) { flex-basis: 38px; width: 38px; height: 38px; }
  body.page-id-6 :is(.npd-service-care-icon, .npd-service-method-icon)::before { width: 22px; height: 22px; }
}
@container (max-width: 260px) {
  body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) { gap: 8px; }
  body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) h3 { font-size: 16px !important; }
  body.page-id-6 :is(.npd-service-care-icon, .npd-service-method-icon) { flex-basis: 32px; width: 32px; height: 32px; }
}
@container (max-width: 240px) {
  body.page-id-6 :is(.npd-service-care-heading, .npd-service-method-heading) h3 { font-size: 15px !important; }
  body.page-id-6 :is(.npd-service-care-icon, .npd-service-method-icon) { flex-basis: 28px; width: 28px; height: 28px; }
  body.page-id-6 :is(.npd-service-care-icon, .npd-service-method-icon)::before { width: 20px; height: 20px; }
}
body.page-id-6 .npd-service-treatment-copy { container-type: inline-size; }
body.page-id-6 .npd-service-treatment-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.page-id-6 .npd-service-treatment-heading h3 {
  margin: 0 !important; min-width: 0; font-size: 24px !important;
  line-height: 1.3; white-space: nowrap !important;
}
@container (max-width: 320px) {
  body.page-id-6 .npd-service-treatment-heading h3 { font-size: 22px !important; }
}
@container (max-width: 280px) {
  body.page-id-6 .npd-service-treatment-heading { gap: 10px; }
  body.page-id-6 .npd-service-treatment-heading h3 { font-size: 20px !important; }
  body.page-id-6 .npd-service-treatment-icon { flex-basis: 38px; width: 38px; height: 38px; }
  body.page-id-6 .npd-service-treatment-icon::before { width: 22px; height: 22px; }
}
@container (max-width: 240px) {
  body.page-id-6 .npd-service-treatment-heading { gap: 8px; }
  body.page-id-6 .npd-service-treatment-heading h3 { font-size: 18px !important; }
  body.page-id-6 .npd-service-treatment-icon { flex-basis: 32px; width: 32px; height: 32px; }
}
body.page-id-6 .npd-service-choice-card { container-type: inline-size; }
body.page-id-6 .npd-service-choice-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.page-id-6 .npd-service-choice-heading h3 {
  margin: 0 !important; min-width: 0; font-size: 28px !important;
  line-height: 1.3; white-space: nowrap !important;
}
@container (max-width: 360px) {
  body.page-id-6 .npd-service-choice-heading h3 { font-size: 24px !important; }
}
@container (max-width: 280px) {
  body.page-id-6 .npd-service-choice-heading { gap: 10px; }
  body.page-id-6 .npd-service-choice-heading h3 { font-size: 22px !important; }
  body.page-id-6 .npd-service-choice-icon { flex-basis: 38px; width: 38px; height: 38px; }
  body.page-id-6 .npd-service-choice-icon::before { width: 22px; height: 22px; }
}
@container (max-width: 240px) {
  body.page-id-6 .npd-service-choice-heading { gap: 8px; }
  body.page-id-6 .npd-service-choice-heading h3 { font-size: 20px !important; }
  body.page-id-6 .npd-service-choice-icon { flex-basis: 32px; width: 32px; height: 32px; }
}
body.page-id-9 main > section.section:not(.about-hero),
body.page-id-10 main > section.section { padding-block: 56px !important; }
@media (min-width: 769px) and (max-width: 1199px) {
  body.page-id-9 main > section.section:not(.about-hero),
  body.page-id-10 main > section.section { padding-block: 48px !important; }
}
@media (max-width: 768px) {
  body.page-id-9 main > section.section:not(.about-hero),
  body.page-id-10 main > section.section { padding-block: 36px !important; }
}
body.page-id-9 h2[data-npd-edit="text-22"] ~ .badge-grid > .badge {
  border: 1px solid rgba(178, 125, 67, .32); border-radius: 8px;
  box-shadow: 0 2px 8px rgba(79, 46, 28, .05), 0 6px 18px rgba(79, 46, 28, .04);
}
body.page-id-9 .doctor-portrait-frame:has(> img[data-npd-image="image-58"]) {
  border-radius: 20px;
  outline: 1px solid rgba(178, 125, 67, .65); outline-offset: -1px;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, .9), 0 0 0 4px rgba(178, 125, 67, .22), 0 10px 26px rgba(79, 46, 28, .10);
}
body.page-id-9 .doctor-portrait-frame:has(> img[data-npd-image="image-58"])::after {
  content: ""; position: absolute; inset: 6px;
  border: 1px solid rgba(255, 255, 255, .65); border-radius: 14px;
  pointer-events: none;
}
body.page-id-9 .doctor-portrait-frame > img[data-npd-image="image-58"],
body.page-id-10 .doctor-portrait-frame > img[data-npd-image="image-47"] {
  width: 100% !important;
  height: 150% !important;
  left: 0;
  top: -25%;
}
body.page-id-10 .image-card:has(img[data-npd-image="image-47"]) {
  width: 100%;
  max-width: 550px !important;
  margin-inline: auto !important;
  padding: 4px !important;
  border: 1px solid rgba(178, 125, 67, .55);
  border-radius: 12px;
}
body.page-id-10 .doctor-portrait-frame:has(> img[data-npd-image="image-47"]) {
  outline: 1px solid rgba(178, 125, 67, .55);
  outline-offset: -1px;
}
body.page-id-10 .timeline .card {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}
body.page-id-9 .about-photo:has(> figcaption[data-npd-edit="text-15"]),
body.page-id-9 .about-photo:has(> figcaption[data-npd-edit="text-39"]) {
  position: relative; align-self: start;
}
body.page-id-9 .about-photo > figcaption[data-npd-edit="text-15"],
body.page-id-9 .about-photo > figcaption[data-npd-edit="text-39"] {
  position: absolute; left: 12px; bottom: 12px; z-index: 1;
  max-width: calc(100% - 24px); box-sizing: border-box;
  margin: 0; padding: 6px 10px;
  color: #fff; background: rgba(24, 24, 24, .76); border-radius: 4px;
  font-size: 14px; line-height: 1.4; text-align: left;
}
body.page-id-9 .about-photo > figcaption[data-npd-edit="text-39"] {
  left: auto; right: 12px; text-align: right;
}
body.page-id-9 .grid-3:has([data-npd-edit="text-32"]) > .card {
  display: grid; grid-template-columns: max-content minmax(0, 1fr);
  grid-template-rows: auto 1fr; gap: 20px 12px; container-type: inline-size;
}
body.page-id-9 .grid-3:has([data-npd-edit="text-32"]) > .card > .num {
  grid-column: 1; grid-row: 1; margin: 0 !important; align-self: center;
}
body.page-id-9 .grid-3:has([data-npd-edit="text-32"]) > .card > h3 {
  grid-column: 2; grid-row: 1; align-self: center;
  margin: 0 !important; min-width: 0; font-size: 24px !important;
  line-height: 1.3; white-space: nowrap !important;
}
body.page-id-9 .grid-3:has([data-npd-edit="text-32"]) > .card > p {
  grid-column: 1 / -1; grid-row: 2; margin: 0;
}
@container (max-width: 280px) {
  body.page-id-9 .grid-3:has([data-npd-edit="text-32"]) > .card > h3 { font-size: 22px !important; }
}
@container (max-width: 250px) {
  body.page-id-9 .grid-3:has([data-npd-edit="text-32"]) > .card > h3 { font-size: 20px !important; }
}
@container (max-width: 220px) {
  body.page-id-9 .grid-3:has([data-npd-edit="text-32"]) > .card > h3 { font-size: 18px !important; }
}
body.page-id-9 .grid-4:has([data-npd-edit="text-40"]) > .card {
  min-height: 220px !important;
}
body.page-id-9 .npd-step-label {
  display: flex; align-items: baseline; gap: 8px; width: fit-content;
  padding-bottom: 8px; border-bottom: 1px solid rgba(178, 125, 67, .45);
  color: #941e22; line-height: 1;
}
body.page-id-9 .npd-step-word {
  font-size: 12px; font-weight: 600; text-transform: uppercase;
}
body.page-id-9 .npd-step-number {
  font-family: inherit; font-size: 40px; font-weight: 400;
  font-variant-numeric: lining-nums tabular-nums; line-height: 1;
}
body.page-id-9 .grid-4:has([data-npd-edit="text-40"]) > .card > h3 {
  margin-top: 20px !important; margin-bottom: 0 !important;
}
@media (max-width: 768px) {
  body.page-id-9 .grid-4:has([data-npd-edit="text-40"]) > .card { min-height: 200px !important; }
  body.page-id-9 .npd-step-number { font-size: 36px; }
}
body.page-id-9 .about-space-copy { container-type: inline-size; }
body.page-id-9 .npd-about-space-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 16px; }
body.page-id-9 .npd-about-space-heading h3 {
  margin: 0 !important; min-width: 0; font-size: 24px !important;
  line-height: 1.3; white-space: nowrap !important;
}
@container (max-width: 310px) {
  body.page-id-9 .npd-about-space-heading h3 { font-size: 22px !important; }
}
@container (max-width: 280px) {
  body.page-id-9 .npd-about-space-heading { gap: 10px; }
  body.page-id-9 .npd-about-space-heading h3 { font-size: 20px !important; }
  body.page-id-9 .npd-about-space-icon { flex-basis: 38px; width: 38px; height: 38px; }
  body.page-id-9 .npd-about-space-icon::before { width: 22px; height: 22px; }
}
@container (max-width: 240px) {
  body.page-id-9 .npd-about-space-heading { gap: 8px; }
  body.page-id-9 .npd-about-space-heading h3 { font-size: 18px !important; }
  body.page-id-9 .npd-about-space-icon { flex-basis: 32px; width: 32px; height: 32px; }
}
body.page-id-9 .npd-about-treatment-card { container-type: inline-size; }
body.page-id-9 .npd-about-treatment-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.page-id-9 .npd-about-treatment-heading h3 {
  margin: 0 !important; min-width: 0; font-size: 24px !important;
  line-height: 1.3; white-space: nowrap !important;
}
@container (max-width: 300px) {
  body.page-id-9 .npd-about-treatment-heading h3 { font-size: 22px !important; }
}
@container (max-width: 280px) {
  body.page-id-9 .npd-about-treatment-heading { gap: 10px; }
  body.page-id-9 .npd-about-treatment-heading h3 { font-size: 20px !important; }
  body.page-id-9 .npd-about-treatment-icon { flex-basis: 38px; width: 38px; height: 38px; }
  body.page-id-9 .npd-about-treatment-icon::before { width: 22px; height: 22px; }
}
@container (max-width: 240px) {
  body.page-id-9 .npd-about-treatment-heading { gap: 8px; }
  body.page-id-9 .npd-about-treatment-heading h3 { font-size: 18px !important; }
  body.page-id-9 .npd-about-treatment-icon { flex-basis: 32px; width: 32px; height: 32px; }
}
body.page-id-9 .npd-about-summary-card { container-type: inline-size; }
body.page-id-9 .npd-about-summary-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
body.page-id-9 .npd-about-summary-heading :is(h2, h3) {
  margin: 0 !important; min-width: 0; font-size: 24px !important;
  line-height: 1.3; white-space: nowrap !important;
}
@container (max-width: 300px) {
  body.page-id-9 .npd-about-summary-heading :is(h2, h3) { font-size: 22px !important; }
}
@container (max-width: 260px) {
  body.page-id-9 .npd-about-summary-heading { gap: 10px; }
  body.page-id-9 .npd-about-summary-heading :is(h2, h3) { font-size: 20px !important; }
  body.page-id-9 .npd-about-summary-icon { flex-basis: 38px; width: 38px; height: 38px; }
  body.page-id-9 .npd-about-summary-icon::before { width: 22px; height: 22px; }
}
@container (max-width: 230px) {
  body.page-id-9 .npd-about-summary-heading { gap: 8px; }
  body.page-id-9 .npd-about-summary-heading :is(h2, h3) { font-size: 18px !important; }
  body.page-id-9 .npd-about-summary-icon { flex-basis: 32px; width: 32px; height: 32px; }
}
@media (min-width: 769px) and (max-width: 1199px) {
  body.page-id-9 .npd-about-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@container (max-width: 280px) {
  body.home .npd-intro-heading { gap: 10px; }
  body.home .npd-intro-heading h3 { font-size: 22px; }
}
@container (max-width: 240px) {
  body.home .npd-intro-heading h3 { font-size: 20px; }
  body.home .npd-intro-icon { flex-basis: 38px; width: 38px; height: 38px; }
}
@container (max-width: 210px) {
  body.home .npd-intro-heading { gap: 8px; }
  body.home .npd-intro-heading h3 { font-size: 18px; }
  body.home .npd-intro-icon { flex-basis: 32px; width: 32px; height: 32px; }
  body.home .npd-intro-icon::before { width: 22px; height: 22px; }
}

body.home .home-treatment-copy { container-type: inline-size; }
body.home .npd-service-card { container-type: inline-size; }
body.home .npd-treatment-heading h3 { font-size: 32px !important; white-space: nowrap !important; }
@container (max-width: 450px) {
  body.home .npd-treatment-heading h3 { font-size: 26px !important; }
}
@container (max-width: 360px) {
  body.home .npd-treatment-heading h3 { font-size: 22px !important; }
}
@container (max-width: 300px) {
  body.home .npd-treatment-heading h3 { font-size: 20px !important; }
}
@container (max-width: 260px) {
  body.home .npd-treatment-heading h3 { font-size: 18px !important; }
  body.home .npd-service-heading h3 { font-size: 16px !important; }
  body.home .npd-service-heading { gap: 8px; }
  body.home .npd-service-heading .npd-intro-icon { flex-basis: 32px; width: 32px; height: 32px; }
  body.home .npd-service-heading .npd-intro-icon::before { width: 22px; height: 22px; }
}

body.home .npd-method-card { container-type: inline-size; }
body.home .npd-contact-card { container-type: inline-size; }
body.home .remedy-visual > .content { container-type: inline-size; }
@media (max-width: 360px) {
  body.home .remedy-visual > .content { padding-inline: 12px; }
}
body.home .npd-method-heading h3 { font-size: 28px !important; white-space: nowrap !important; }
@container (max-width: 380px) {
  body.home .npd-method-heading h3 { font-size: 24px !important; }
}
@container (max-width: 320px) {
  body.home .npd-method-heading h3 { font-size: 22px !important; }
}
@container (max-width: 280px) {
  body.home .npd-method-heading h3 { font-size: 20px !important; }
}
@container (max-width: 250px) {
  body.home .npd-method-heading h3 { font-size: 18px !important; }
  body.home .npd-remedy-heading h3 { font-size: 16px !important; }
  body.home .npd-method-heading { gap: 8px; }
  body.home .npd-method-heading .npd-intro-icon { flex-basis: 32px; width: 32px; height: 32px; }
  body.home .npd-method-heading .npd-intro-icon::before { width: 22px; height: 22px; }
}
@container (max-width: 210px) {
  body.home .npd-method-heading h3 { font-size: 16px !important; }
}

body.home .hero-img { padding: 0 !important; overflow: hidden; }
body.home .hero-img .doctor-portrait-frame {
  width: 100%; max-width: none; margin-inline: 0;
  border-radius: inherit; border-bottom-left-radius: 0; border-bottom-right-radius: 0;
}
body.home .hero-img figcaption { margin: 0 !important; padding: 18px 12px; }

/* Paint image borders without adding layout space. */
body.home :is(.doctor-portrait-frame, .home-photo > img, .home-treatment-card > img, .remedy-visual > img) {
  outline: 2px solid rgba(178, 125, 67, .65);
  outline-offset: -2px;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, .9), 0 0 0 4px rgba(178, 125, 67, .24), 0 8px 22px rgba(79, 46, 28, .10);
  transition: outline-color 220ms ease, box-shadow 220ms ease;
}
body.home .doctor-portrait-frame::after {
  content: "";
  position: absolute;
  inset: 6px;
  border: 1px solid rgba(255, 255, 255, .65);
  border-radius: inherit;
  pointer-events: none;
}
@media (hover: hover) and (pointer: fine) {
  body.home .hero-img:hover .doctor-portrait-frame,
  body.home :is(.home-photo, .home-treatment-card, .remedy-visual):hover > img {
    outline-color: #a36532;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, .98), 0 0 0 5px rgba(178, 125, 67, .38), 0 12px 28px rgba(79, 46, 28, .17);
  }
}
body.home :is(.home-treatment-card, .remedy-visual):focus-within > img {
  outline-color: #a36532;
}
@media (prefers-reduced-motion: reduce) {
  body.home :is(.doctor-portrait-frame, .home-photo > img, .home-treatment-card > img, .remedy-visual > img) { transition: none; }
}

@media (min-width: 901px) {
  body.home .social-footer-grid > div:first-child { grid-column: 1 / -1; min-width: 0; }
  body.home .social-footer h2[data-npd-edit="text-102"] { font-size: 62px; white-space: nowrap; }
  body.home h2[data-npd-edit="text-102"] br { display: none; }
  body.home .title:has(> p[data-npd-edit="text-57"]),
  body.home .title:has(> p[data-npd-edit="text-89"]) { max-width: none; }
  body.home p[data-npd-edit="text-57"],
  body.home p[data-npd-edit="text-89"] { white-space: nowrap; }
  body.home .title:has(> h2[data-npd-edit="text-48"]),
  body.home .title:has(> h2[data-npd-edit="text-68"]),
  body.home .title:has(> h2[data-npd-edit="text-79"]) { max-width: none; }
  body.home .title:has(> h2[data-npd-edit="text-79"]) > .desc { width: 100%; max-width: none; text-wrap: balance; }
  body.home p[data-npd-edit="text-80"] br { display: none; }
  body.home .title:has(> h2[data-npd-edit="text-48"]) > .desc { max-width: none; text-wrap: balance; }
  body.home p[data-npd-edit="text-49"] br { display: none; }
  body.home h2[data-npd-edit="text-48"],
  body.home h2[data-npd-edit="text-68"],
  body.home h2[data-npd-edit="text-79"] { font-size: 62px; white-space: nowrap; }
}
@media (min-width: 901px) and (max-width: 1199px) {
  body.home .social-footer h2[data-npd-edit="text-102"] { font-size: 40px; }
  body.home p[data-npd-edit="text-57"],
  body.home p[data-npd-edit="text-89"] { font-size: 16px; }
  body.home h2[data-npd-edit="text-48"],
  body.home h2[data-npd-edit="text-68"],
  body.home h2[data-npd-edit="text-79"] { font-size: 40px; }
}
@media (min-width: 1200px) and (max-width: 1399px) {
  body.home .social-footer h2[data-npd-edit="text-102"] { font-size: 52px; }
  body.home h2[data-npd-edit="text-48"],
  body.home h2[data-npd-edit="text-68"],
  body.home h2[data-npd-edit="text-79"] { font-size: 52px; }
  body.home p[data-npd-edit="text-49"],
  body.home p[data-npd-edit="text-80"] { font-size: 16px; }
}
@media (min-width: 901px) and (max-width: 999px) {
  body.home p[data-npd-edit="text-57"] { font-size: 15px; }
  body.home p[data-npd-edit="text-89"] { font-size: 14px; }
}

.npd-compiler-byline {
  margin: 12px 0 18px;
  font-size: 15px;
  line-height: 1.6;
  color: #654d44;
  overflow-wrap: anywhere;
}
.npd-compiler-byline a {
  color: #8b1e1e;
  text-decoration: underline;
  text-underline-offset: 3px;
}
/* These social links sit on white cards, not the dark contact footer. */
body.page-id-11 .npd-contact-social-card :is(.social-chip-facebook, .social-chip-tiktok) {
  color: #fff;
  background: #8b1e1e;
  border-color: #8b1e1e;
}
body.page-id-11 .npd-contact-social-card :is(.social-chip-facebook, .social-chip-tiktok) > span {
  color: inherit;
}
body.page-id-11 .npd-contact-social-card :is(.social-chip-facebook, .social-chip-tiktok):is(:hover, :focus-visible) {
  color: #fff;
  background: #6f1717;
  border-color: #6f1717;
}
body.page-id-11 .npd-contact-social-card :is(.social-chip-facebook, .social-chip-tiktok):focus-visible {
  outline: 3px solid #7a1c1c;
  outline-offset: 4px;
}
/* Preserve the visual scale when correcting the semantic heading levels. */
body.page-id-9 .npd-summary-title,
body.page-id-10 .npd-summary-title {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 600;
  color: #7a1c1c;
  text-align: start;
  max-width: none;
}
body.page-id-10 .npd-summary-title {
  font-size: 28px !important;
  line-height: 1.18 !important;
  margin: 0 0 28px !important;
}
body:is(.page-id-49, .page-id-50) .npd-photo-caption-title {
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 26px !important;
  font-weight: 700;
  line-height: 1.2 !important;
  margin: 0 0 8px !important;
  color: #7a1c1c;
}
body:is(.page-id-48, .page-id-49) main .num { color: #8b1e1e; }
body.postid-70 .npd-warning-list {
  display: grid;
  gap: 0;
  padding: 0;
  margin: 16px 0 0;
  list-style: none;
}
body.postid-70 .npd-warning-list > .alert-line {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  padding: 14px 0;
  border-bottom: 1px solid #dfc6b8;
  line-height: 1.65;
}
body.postid-70 .npd-warning-list > .alert-line > span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin-top: 2px;
  color: #7a1c1c;
  background: #f9e4d3;
  border: 1px solid #c58a65;
  border-radius: 4px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1;
}
body.postid-70 .npd-warning-list .alert-line > div { min-width: 0; }
body:is(.page-id-27, .page-id-28) a[data-npd-link^="qc-reference-"]:focus-visible {
  outline: 3px solid #7a1c1c;
  outline-offset: 4px;
}
@media (max-width: 768px) {
  body.page-id-9 .npd-summary-title { line-height: 1.24 !important; }
  body.page-id-10 .npd-summary-title,
  body:is(.page-id-49, .page-id-50) .npd-photo-caption-title {
    font-size: 23.4px !important;
    line-height: 1.24 !important;
    margin: 0 0 12px !important;
  }
}
/* Long imported headings must wrap within the existing desktop container. */
@media (min-width: 769px) {
  body.postid-18 .section-title .nowrap-desktop,
  body.page-id-18 .section-title .nowrap-desktop {
    white-space: normal;
    text-wrap: balance;
  }
}
