@charset "UTF-8";
/*
 Theme Name:   Chappaqua Little Smiles
 Theme URI:    https://chappaqualittlesmiles.com
 Description:  Chappaqua Little Smiles child theme
 Author:       Sara Chandlee
 Author URI:   http://sarachandlee.com
 Template:     frost
 Version:      1.0.0
 License:      GNU General Public License v2 or later
 License URI:  http://www.gnu.org/licenses/gpl-2.0.html
 Tags:         light, dark, two-columns, right-sidebar, responsive-layout, accessibility-ready
 Text Domain:  chappaqualittlesmiles
*/
iframe {
  border: 0;
}

h1, h2, h3, h4, h5, h6, p {
  text-wrap: pretty;
}

.has-navy-background-color a,
.has-ink-background-color a {
  color: var(--wp--preset--color--white);
}

.site-footer a {
  color: var(--wp--preset--color--on-footer);
}
.site-footer a:hover {
  color: var(--wp--preset--color--white);
}

.top-bar a {
  color: inherit;
  text-decoration: none;
}
.top-bar a:hover {
  text-decoration: underline;
}

.top-bar strong {
  font-weight: var(--wp--custom--font-weight--bold);
}

.top-bar {
  font-size: var(--wp--preset--font-size--eyebrow);
  letter-spacing: var(--wp--custom--letter-spacing--micro);
}

.main-nav {
  position: relative;
  border-bottom: var(--wp--custom--border--hairline);
}
.main-nav::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--wp--custom--header--background);
  backdrop-filter: var(--wp--custom--header--blur);
  -webkit-backdrop-filter: var(--wp--custom--header--blur);
}
.main-nav .wp-block-site-logo {
  margin: 0;
}
.main-nav .wp-block-site-logo img {
  max-height: var(--wp--custom--header--logo-height);
  width: auto;
  height: auto;
}
.main-nav .wp-block-navigation-item a {
  color: var(--wp--preset--color--ink);
}
.main-nav .wp-block-button__link {
  padding: var(--wp--custom--button--padding-small);
  box-shadow: var(--wp--preset--shadow--button);
}

.site-footer ul.wp-block-list {
  margin-top: var(--wp--preset--spacing--40);
}
.site-footer ul.wp-block-list li {
  margin-bottom: var(--wp--preset--spacing--25);
}
.site-footer .wp-block-separator {
  border: 0;
  border-top: var(--wp--custom--border--footer-rule);
  opacity: 1;
  background: none;
}

.img-placeholder {
  aspect-ratio: 4/3;
  border-radius: var(--wp--custom--radius--hero);
  background: repeating-linear-gradient(135deg, var(--wp--preset--color--page), var(--wp--preset--color--page) 10px, var(--wp--preset--color--white) 10px, var(--wp--preset--color--white) 20px);
  border: 1px dashed var(--wp--preset--color--blue);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: var(--wp--preset--spacing--60);
}
.img-placeholder p {
  margin: 0;
  color: var(--wp--preset--color--blue);
  font-size: var(--wp--preset--font-size--meta);
  font-weight: var(--wp--custom--font-weight--medium);
}
.img-placeholder--square {
  aspect-ratio: 1/1;
}
.img-placeholder--16-9 {
  aspect-ratio: 16/9;
}
.img-placeholder--16-7 {
  aspect-ratio: 16/7;
}
.img-placeholder--5-4 {
  aspect-ratio: 5/4;
}
.img-placeholder--4-5 {
  aspect-ratio: 4/5;
}
.img-placeholder--3-2 {
  aspect-ratio: 3/2;
}
.img-placeholder--4-36 {
  aspect-ratio: 4/3.6;
}

.hero-eyebrow {
  display: inline-block;
  background: var(--wp--preset--color--amber-bg);
  color: var(--wp--preset--color--amber-ink);
  font-weight: var(--wp--custom--font-weight--bold);
  letter-spacing: var(--wp--custom--letter-spacing--label);
  text-transform: uppercase;
  padding: 8px 16px;
  border-radius: var(--wp--custom--radius--pill);
  margin-bottom: var(--wp--preset--spacing--60);
}

:root :where(.wp-block-buttons-is-layout-flex) {
  margin-top: var(--wp--preset--spacing--80);
}

.wp-block-button.is-style-outline .wp-block-button__link {
  background: var(--wp--preset--color--white);
  color: var(--wp--preset--color--navy);
  padding: var(--wp--custom--button--padding-large);
  border-radius: var(--wp--custom--radius--pill);
  font-weight: var(--wp--custom--font-weight--bold);
  font-size: var(--wp--preset--font-size--medium);
  border: var(--wp--custom--border--button);
  box-shadow: none;
  transition: var(--wp--custom--button--transition);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover {
  border-color: var(--wp--preset--color--blue);
}

.has-navy-background-color .wp-block-button.is-style-outline .wp-block-button__link,
.has-ink-background-color .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent;
  color: var(--wp--preset--color--white);
  border: var(--wp--custom--border--on-navy);
  box-shadow: none;
}
.has-navy-background-color .wp-block-button.is-style-outline .wp-block-button__link:hover,
.has-ink-background-color .wp-block-button.is-style-outline .wp-block-button__link:hover {
  border-color: var(--wp--preset--color--white);
}

.trust-bullets {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--70);
}
@media (max-width: 782px) {
  .trust-bullets {
    grid-template-columns: 1fr;
  }
}

.trust-bullets__item {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  gap: 14px;
}
.trust-bullets__item p {
  min-width: 0;
  flex: 1 1 auto;
  margin: 0;
  color: var(--wp--preset--color--ink-dense);
  line-height: 1.45;
}
.trust-bullets__item strong {
  color: var(--wp--preset--color--ink);
  font-weight: var(--wp--custom--font-weight--bold);
}

.trust-bullets__dot {
  flex: none !important;
  display: block;
  width: 10px !important;
  height: 10px !important;
  padding: 0;
  border-radius: 50%;
  margin: 8px 0 0 !important;
}

.eyebrow {
  display: block;
  color: var(--wp--preset--color--ink-eyebrow);
  font-weight: var(--wp--custom--font-weight--bold);
  letter-spacing: var(--wp--custom--letter-spacing--eyebrow);
  text-transform: uppercase;
}

.has-navy-background-color .eyebrow,
.has-ink-background-color .eyebrow {
  color: var(--wp--preset--color--on-navy-eyebrow);
}

.has-quote-font-size {
  line-height: var(--wp--custom--line-height--quote);
}

.has-lead-font-size {
  line-height: var(--wp--custom--line-height--lead);
}

.credential-tight {
  margin-bottom: 2px;
}

.portrait-crop {
  border-radius: var(--wp--custom--radius--hero);
  overflow: hidden;
  aspect-ratio: 4/5;
}
.portrait-crop .wp-block-image {
  margin: 0;
  height: 100%;
}
.portrait-crop img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 22%;
}

.doctor-section .wp-block-buttons {
  gap: 14px;
}

.doctor-section .wp-block-button.is-style-outline .wp-block-button__link {
  padding: var(--wp--custom--button--padding-medium);
}

.our-practice-teaser__columns {
  column-gap: 64px;
}

.stat-row {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.stat-row--spread {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--60);
}
@media (max-width: 900px) {
  .stat-row--spread {
    grid-template-columns: 1fr;
  }
}

.stat-row__number {
  margin: 0;
  font-family: var(--wp--preset--font-family--display);
  font-size: 40px;
  line-height: 1;
  color: var(--wp--preset--color--blue);
}

.stat-row__label {
  margin: 4px 0 0;
  font-size: var(--wp--preset--font-size--meta);
  color: var(--wp--preset--color--ink-caption);
}

.wp-block-group.measure-lead,
.measure-lead {
  max-width: var(--wp--custom--measure--lead);
}

.wp-block-group.measure-body,
.measure-body {
  max-width: var(--wp--custom--measure--body);
}

.wp-block-group.measure-intro,
.measure-intro {
  max-width: var(--wp--custom--measure--intro);
}

.wp-block-group.measure-heading,
.measure-heading {
  max-width: var(--wp--custom--measure--heading);
}

.wp-block-group.measure-callout,
.measure-callout {
  max-width: var(--wp--custom--measure--callout);
}

.wp-block-group.measure-title,
.measure-title {
  max-width: var(--wp--custom--measure--title);
}

.wp-block-group.measure-heading-wide,
.measure-heading-wide {
  max-width: var(--wp--custom--measure--heading-wide);
}

.measure-lead:not(.alignwide),
.measure-body:not(.alignwide),
.measure-intro:not(.alignwide),
.measure-heading:not(.alignwide),
.measure-callout:not(.alignwide),
.measure-title:not(.alignwide),
.measure-heading-wide:not(.alignwide) {
  margin-left: 0 !important;
  margin-right: auto !important;
}

.section-link a {
  font-size: var(--wp--preset--font-size--medium);
  font-weight: var(--wp--custom--font-weight--bold);
}

.editorial-note {
  display: inline-block;
  font-family: var(--wp--preset--font-family--mono);
  font-size: var(--wp--preset--font-size--note);
  color: var(--wp--preset--color--ink-eyebrow);
  background: #E8F0F8;
  padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--30);
  border-radius: var(--wp--custom--radius--note);
}

.has-navy-background-color .editorial-note,
.has-ink-background-color .editorial-note,
.editorial-note--on-navy {
  color: var(--wp--preset--color--on-navy-eyebrow);
  background: none;
  padding: 0;
}

.hero-section .wp-block-button__link,
.location-section .wp-block-button__link {
  padding: var(--wp--custom--button--padding-large);
  font-size: var(--wp--preset--font-size--medium-large);
}

.detail-label {
  display: block;
  font-size: var(--wp--preset--font-size--meta);
  font-weight: var(--wp--custom--font-weight--bold);
  letter-spacing: var(--wp--custom--letter-spacing--label);
  text-transform: uppercase;
  color: var(--wp--preset--color--ink-eyebrow);
}

.breadcrumb {
  color: var(--wp--preset--color--ink-attribution);
  font-size: var(--wp--preset--font-size--meta);
}
.breadcrumb .rank-math-breadcrumb p {
  margin: 0;
  color: inherit;
}
.breadcrumb a {
  color: inherit;
  text-decoration: none;
}
.breadcrumb a:hover {
  color: var(--wp--preset--color--blue);
  text-decoration: underline;
}
.breadcrumb strong,
.breadcrumb .last {
  font-weight: inherit;
  color: var(--wp--preset--color--ink-dense);
}

.has-navy-background-color .breadcrumb,
.has-ink-background-color .breadcrumb {
  color: var(--wp--preset--color--on-navy-muted);
}
.has-navy-background-color .breadcrumb strong,
.has-navy-background-color .breadcrumb .last,
.has-ink-background-color .breadcrumb strong,
.has-ink-background-color .breadcrumb .last {
  color: var(--wp--preset--color--white);
}
.has-navy-background-color .breadcrumb a:hover,
.has-ink-background-color .breadcrumb a:hover {
  color: var(--wp--preset--color--white);
}

.bullet-list {
  list-style: none;
  padding-left: 0;
}
.bullet-list li {
  position: relative;
  padding-left: var(--wp--preset--spacing--60);
  margin-bottom: var(--wp--preset--spacing--40);
}
.bullet-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--wp--preset--color--cyan);
}

.wp-block-navigation__responsive-container-close,
.wp-block-navigation__responsive-container-open {
  border: 0;
}

@media (max-width: 900px) {
  .main-nav .wp-block-navigation {
    order: 1;
  }
  .main-nav .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none;
  }
  .main-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: var(--wp--custom--radius--burger);
    background: var(--wp--preset--color--tint);
    color: var(--wp--preset--color--navy);
  }
}
:root {
  --clsHeaderHeight: var(--wp--custom--header--stickyOffset);
}

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  width: 100%;
}
.site-header.scroll {
  box-shadow: 0 2px 20px rgba(21, 37, 71, 0.12);
}

.site-content {
  padding-top: var(--clsHeaderHeight);
}

.admin-bar .site-header {
  top: 32px;
}

@media (max-width: 600px) {
  :root {
    --clsHeaderHeight: 76px;
  }
}
.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color: white;
}

.wp-block-navigation__responsive-container.is-menu-open .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color: var(--wp--preset--color--ink);
}

.wp-block-post-content h1,
.entry-content h1,
.wp-site-blocks h1 {
  margin-block-start: var(--wp--preset--spacing--60);
}
.wp-block-post-content h2,
.entry-content h2,
.wp-site-blocks h2 {
  margin-block-start: var(--wp--preset--spacing--45);
}
.wp-block-post-content h3,
.entry-content h3,
.wp-site-blocks h3 {
  margin-block-start: var(--wp--preset--spacing--40);
}
.wp-block-post-content h4,
.entry-content h4,
.wp-site-blocks h4 {
  margin-block-start: var(--wp--preset--spacing--30);
}
.wp-block-post-content > :first-child:is(h1, h2, h3, h4),
.wp-block-post-content .wp-block-column > :first-child:is(h1, h2, h3, h4),
.wp-block-post-content .wp-block-group > :first-child:is(h1, h2, h3, h4),
.entry-content > :first-child:is(h1, h2, h3, h4),
.entry-content .wp-block-column > :first-child:is(h1, h2, h3, h4),
.entry-content .wp-block-group > :first-child:is(h1, h2, h3, h4),
.wp-site-blocks > :first-child:is(h1, h2, h3, h4),
.wp-site-blocks .wp-block-column > :first-child:is(h1, h2, h3, h4),
.wp-site-blocks .wp-block-group > :first-child:is(h1, h2, h3, h4) {
  margin-block-start: 0;
}

.step-card h1, .step-card h2, .step-card h3, .step-card h4,
.age-card h1,
.age-card h2,
.age-card h3,
.age-card h4,
.belief-card h1,
.belief-card h2,
.belief-card h3,
.belief-card h4,
.testimonial-card h1,
.testimonial-card h2,
.testimonial-card h3,
.testimonial-card h4,
.care-callout h1,
.care-callout h2,
.care-callout h3,
.care-callout h4,
.article-card h1,
.article-card h2,
.article-card h3,
.article-card h4,
.faq-accordion h1,
.faq-accordion h2,
.faq-accordion h3,
.faq-accordion h4 {
  margin-block-start: 0;
}

@media (max-width: 900px) {
  h1,
  .has-h-1-font-size {
    font-size: var(--wp--custom--mobile-type--h-1) !important;
  }
  .has-h-1-interior-font-size {
    font-size: var(--wp--custom--mobile-type--h-1-interior) !important;
  }
}
.hero-image {
  position: relative;
}

.hero-image__crop {
  border-radius: var(--wp--custom--radius--hero);
  overflow: hidden;
  box-shadow: var(--wp--preset--shadow--image);
  aspect-ratio: 4/3.4;
}
.hero-image__crop .wp-block-image,
.hero-image__crop .wp-block-post-featured-image {
  margin: 0;
  height: 100%;
}
.hero-image__crop img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.hero-image__crop--service {
  aspect-ratio: 5/4;
}

.hero-badge {
  position: absolute;
  left: -26px;
  bottom: -26px;
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--wp--preset--color--white);
  border-radius: var(--wp--custom--radius--float);
  padding: 18px 22px;
  box-shadow: var(--wp--preset--shadow--float);
}
.hero-badge .hero-badge__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 50%;
  background: var(--wp--preset--color--tint);
  color: var(--wp--preset--color--blue);
  font-weight: var(--wp--custom--font-weight--bold);
  font-size: 20px;
  margin: 0;
}
.hero-badge .hero-badge__text {
  margin: 0;
  color: var(--wp--preset--color--ink-dense);
  font-weight: var(--wp--custom--font-weight--regular);
  line-height: 1.35;
}
.hero-badge .hero-badge__text strong {
  font-weight: var(--wp--custom--font-weight--bold);
  color: var(--wp--preset--color--ink);
}

.belief-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--60);
}
@media (max-width: 900px) {
  .belief-grid {
    grid-template-columns: 1fr;
  }
}

.belief-card {
  background: var(--wp--preset--color--white);
  border-radius: var(--wp--custom--radius--card-small);
  padding: var(--wp--preset--spacing--90);
}
.belief-card::before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--wp--preset--color--blue);
  margin-bottom: var(--wp--preset--spacing--40);
}
.belief-card h3 {
  margin: 0 0 var(--wp--preset--spacing--30);
}
.belief-card p {
  margin: 0;
  color: var(--wp--preset--color--ink-card);
}

.process-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--wp--preset--spacing--60);
  margin-top: var(--wp--preset--spacing--100);
}
@media (max-width: 900px) {
  .process-steps {
    grid-template-columns: 1fr;
  }
}

.step-list {
  display: flex;
  flex-direction: column;
  gap: var(--wp--preset--spacing--60);
}
.step-list .step-card {
  display: flex;
  align-items: flex-start;
  gap: var(--wp--preset--spacing--60);
}

.step-card {
  background: var(--wp--preset--color--page);
  border-radius: var(--wp--custom--radius--tile);
  padding: var(--wp--preset--spacing--75);
}
.step-card .step-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 34px;
  padding: 0 8px;
  border-radius: 8px;
  background: var(--wp--preset--color--tint);
  color: var(--wp--preset--color--blue);
  font-weight: var(--wp--custom--font-weight--semi-bold);
  font-size: var(--wp--preset--font-size--small);
  margin-bottom: var(--wp--preset--spacing--40);
}
.step-card h3 {
  margin: 0 0 var(--wp--preset--spacing--20);
  font-size: var(--wp--preset--font-size--medium);
}
.step-card p {
  margin: 0;
  color: var(--wp--preset--color--ink-card);
}

.step-list .step-card .step-number {
  margin-bottom: 0;
  flex: 0 0 auto;
  width: 36px;
  min-width: 36px;
  height: 36px;
  padding: 0;
  border-radius: 50%;
  background: var(--wp--preset--color--white);
}

.process-steps .step-card .step-number {
  display: block;
  min-width: 0;
  height: auto;
  padding: 0;
  background: none;
  border-radius: 0;
  font-family: var(--wp--preset--font-family--display);
  font-size: var(--wp--preset--font-size--step-number);
  font-weight: var(--wp--custom--font-weight--regular);
  color: var(--wp--preset--color--blue);
  margin-bottom: 0;
}
.process-steps .step-card h3 {
  margin: var(--wp--preset--spacing--30) 0 0;
}
.process-steps .step-card p {
  margin-top: var(--wp--preset--spacing--25);
}

.care-by-age {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--60);
  margin-top: var(--wp--preset--spacing--95);
}
@media (max-width: 900px) {
  .care-by-age {
    grid-template-columns: 1fr;
  }
}
.care-by-age.is-stacked {
  grid-template-columns: 1fr;
}
.care-by-age.is-centered {
  grid-template-columns: repeat(6, 1fr);
}
.care-by-age.is-centered > .age-card {
  grid-column: span 2;
}
.care-by-age.is-centered > .age-card:nth-child(3n+1):nth-last-child(2) {
  grid-column: 2/span 2;
}
.care-by-age.is-centered > .age-card:nth-child(3n+1):last-child {
  grid-column: 3/span 2;
}
@media (max-width: 900px) {
  .care-by-age.is-centered {
    grid-template-columns: 1fr;
  }
  .care-by-age.is-centered > .age-card,
  .care-by-age.is-centered > .age-card:nth-child(3n+1):nth-last-child(2),
  .care-by-age.is-centered > .age-card:nth-child(3n+1):last-child {
    grid-column: auto;
  }
}

.age-card {
  background: var(--wp--preset--color--white);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: var(--wp--custom--radius--card);
  padding: var(--wp--preset--spacing--85);
}
.age-card .age-card__pill {
  display: inline-block;
  background: var(--wp--preset--color--tint);
  color: var(--wp--preset--color--blue);
  font-size: var(--wp--preset--font-size--eyebrow);
  font-weight: var(--wp--custom--font-weight--bold);
  padding: var(--wp--preset--spacing--17) var(--wp--preset--spacing--40);
  border-radius: var(--wp--custom--radius--pill);
}
.age-card h3 {
  margin: var(--wp--preset--spacing--50) 0 0;
}
.age-card > p {
  margin: var(--wp--preset--spacing--30) 0 0;
  color: var(--wp--preset--color--ink-card);
}
.age-card ul {
  list-style: disc;
  margin: var(--wp--preset--spacing--50) 0 0;
  padding-left: var(--wp--preset--spacing--55);
  line-height: var(--wp--custom--line-height--list);
  color: var(--wp--preset--color--ink-card);
}
.age-card ul li {
  margin-bottom: 0;
}

.care-callout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--70);
  background: var(--wp--preset--color--white);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: var(--wp--custom--radius--card);
  padding: var(--wp--preset--spacing--85) var(--wp--preset--spacing--87);
  margin-top: var(--wp--preset--spacing--60);
}
@media (max-width: 600px) {
  .care-callout {
    flex-direction: column;
    align-items: flex-start;
  }
}
.care-callout h3 {
  margin: 0;
}
.care-callout p {
  margin: var(--wp--preset--spacing--25) 0 0;
  color: var(--wp--preset--color--ink-card);
}
.care-callout .wp-block-button__link {
  background: var(--wp--preset--color--tint);
  color: var(--wp--preset--color--navy);
  padding: var(--wp--custom--button--padding-compact);
  box-shadow: none;
}
.care-callout .wp-block-button__link:hover, .care-callout .wp-block-button__link:focus, .care-callout .wp-block-button__link:active {
  background: var(--wp--preset--color--tint-deep);
  color: var(--wp--preset--color--navy);
}

.side-card {
  border-color: transparent;
}

.smile-club__pill {
  display: inline-block;
  background: var(--wp--preset--color--tint);
  color: var(--wp--preset--color--navy);
  font-weight: var(--wp--custom--font-weight--bold);
  padding: var(--wp--preset--spacing--27) var(--wp--preset--spacing--55);
  border-radius: var(--wp--custom--radius--pill);
}

.smile-club-card {
  border-radius: var(--wp--custom--radius--hero);
}
.smile-club-card .smile-club-card__label {
  margin: 0;
  font-weight: var(--wp--custom--font-weight--bold);
  letter-spacing: var(--wp--custom--letter-spacing--caps-wide);
  text-transform: uppercase;
}
.smile-club-card .smile-club-card__price {
  display: flex;
  align-items: baseline;
  gap: var(--wp--preset--spacing--25);
  margin-top: var(--wp--preset--spacing--40);
}
.smile-club-card .smile-club-card__figure {
  margin: 0;
  font-family: var(--wp--preset--font-family--display);
  font-size: var(--wp--preset--font-size--price);
  line-height: 1;
}
.smile-club-card .smile-club-card__period {
  margin: 0;
}
.smile-club-card .editorial-note {
  margin-top: var(--wp--preset--spacing--25);
}
.smile-club-card ul {
  margin-top: var(--wp--preset--spacing--65);
  padding-left: var(--wp--preset--spacing--55);
  line-height: var(--wp--custom--line-height--list-loose);
}

.faq-accordion {
  display: grid;
  gap: var(--wp--preset--spacing--40);
  align-content: start;
}
.faq-accordion details {
  background: var(--wp--preset--color--card-alt);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: var(--wp--custom--radius--accordion);
  overflow: hidden;
}
.faq-accordion details[open] summary::after {
  content: "−";
}
.faq-accordion summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--wp--preset--spacing--55);
  padding: var(--wp--preset--spacing--57) var(--wp--preset--spacing--65);
  cursor: pointer;
  font-family: var(--wp--preset--font-family--display);
  font-size: var(--wp--preset--font-size--lead);
  font-weight: var(--wp--custom--font-weight--semi-bold);
  color: var(--wp--preset--color--ink);
  list-style: none;
}
.faq-accordion summary::-webkit-details-marker {
  display: none;
}
.faq-accordion summary::after {
  content: "+";
  flex: 0 0 auto;
  color: var(--wp--preset--color--blue);
  font-size: var(--wp--preset--font-size--h3-small);
  line-height: 1;
}
.faq-accordion .faq-answer {
  margin: 0;
  padding: 0 var(--wp--preset--spacing--65) var(--wp--preset--spacing--60);
  font-size: var(--wp--preset--font-size--medium);
  line-height: var(--wp--custom--line-height--body-loose);
  color: var(--wp--preset--color--ink-card);
}

.link-row {
  background: var(--wp--preset--color--page);
  border-radius: var(--wp--custom--radius--link-row);
  padding: var(--wp--preset--spacing--50) var(--wp--preset--spacing--57);
  transition: var(--wp--custom--button--transition);
}
.link-row p {
  margin: 0;
  font-weight: var(--wp--custom--font-weight--bold);
}
.link-row a {
  color: var(--wp--preset--color--navy);
  text-decoration: none;
  display: block;
}
.link-row:hover {
  background: var(--wp--preset--color--tint);
}

.testimonials {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--60);
  margin-top: var(--wp--preset--spacing--95);
}
@media (max-width: 900px) {
  .testimonials {
    grid-template-columns: 1fr;
  }
}

.testimonial-card {
  display: flex;
  flex-direction: column;
  background: var(--wp--preset--color--white);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: var(--wp--custom--radius--card);
  padding: var(--wp--preset--spacing--80);
}
.testimonial-card .testimonial-card__stars {
  font-size: var(--wp--preset--font-size--medium-large);
  color: var(--wp--preset--color--star);
  letter-spacing: var(--wp--custom--letter-spacing--stars);
  margin-bottom: var(--wp--preset--spacing--50);
}
.testimonial-card .has-quote-font-size {
  font-family: var(--wp--preset--font-family--display);
  color: var(--wp--preset--color--ink);
  margin: 0 0 var(--wp--preset--spacing--50);
}
.testimonial-card p:has(> cite) {
  margin: auto 0 0;
}
.testimonial-card cite {
  display: block;
  font-style: normal;
  font-size: var(--wp--preset--font-size--small);
  color: var(--wp--preset--color--ink-attribution);
}

.article-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--wp--preset--spacing--60);
  margin-top: var(--wp--preset--spacing--95);
}
@media (max-width: 900px) {
  .article-cards {
    grid-template-columns: 1fr;
  }
}

.article-card {
  background: var(--wp--preset--color--white);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: var(--wp--custom--radius--card);
  overflow: hidden;
  transition: border-color 140ms ease;
}
.article-card:hover {
  border-color: var(--wp--preset--color--line-strong);
}
.article-card .img-placeholder,
.article-card .wp-block-image {
  margin: 0;
  border-radius: 0;
}
.article-card img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.article-card__body {
  padding: var(--wp--preset--spacing--65) var(--wp--preset--spacing--70) var(--wp--preset--spacing--75);
}

.article-card__meta {
  margin: 0;
  font-size: var(--wp--preset--font-size--eyebrow);
  font-weight: var(--wp--custom--font-weight--bold);
  letter-spacing: var(--wp--custom--letter-spacing--label);
  text-transform: uppercase;
  color: var(--wp--preset--color--ink-eyebrow);
}

.article-card h3 {
  margin: var(--wp--preset--spacing--25) 0 0;
}
.article-card h3 a {
  color: var(--wp--preset--color--ink);
  text-decoration: none;
}

.article-card__excerpt {
  margin: var(--wp--preset--spacing--25) 0 0;
  font-size: var(--wp--preset--font-size--small);
  line-height: var(--wp--custom--line-height--lead);
  color: var(--wp--preset--color--ink-card);
}

/* Mobile header + flyout fixes (Oct 6, 2026) */
.wp-block-navigation__responsive-container.is-menu-open .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color: var(--wp--preset--color--white);
}
.main-nav .wp-block-navigation-item.menu-book-mobile {
  display: none;
}
@media (max-width: 900px) {
  .main-nav .wp-block-site-logo img {
    max-height: 56px;
  }
  .main-nav .wp-block-buttons {
    display: none;
  }
  .main-nav > .wp-block-group {
    flex-wrap: nowrap;
    align-items: center;
  }
  .top-bar .wp-block-group.alignwide {
    justify-content: center;
    text-align: center;
    flex-wrap: wrap;
  }
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item.menu-book-mobile {
    display: flex;
    margin-top: var(--wp--preset--spacing--40);
  }
  .wp-block-navigation__responsive-container.is-menu-open .menu-book-mobile .wp-block-navigation-item__content {
    background: var(--wp--preset--color--white);
    color: var(--wp--preset--color--navy);
    padding: 0.75em 1.75em;
    border-radius: 999px;
    font-weight: 700;
  }
}
/* Mobile flyout: translucent box behind submenu links (Oct 6, 2026) */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {
  background-color: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: 14px !important;
  padding: 0.75em 1.5em !important;
  margin-top: 0.6em !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  font-size: 0.92em;
}

/* Tablet/laptop header: keep logo, nav and Book a Visit on one line (Oct 9, 2026) */
@media (min-width: 901px) {
  .main-nav > .wp-block-group {
    flex-wrap: nowrap !important;
    gap: 16px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .main-nav .wp-block-site-logo img {
    max-height: 64px !important;
    width: auto !important;
  }
  .main-nav .wp-block-navigation,
  .main-nav .wp-block-navigation .wp-block-navigation__container {
    gap: 0.4em 1.1em !important;
    flex-wrap: nowrap !important;
  }
  .main-nav .wp-block-navigation-item a {
    font-size: 15px;
    white-space: nowrap;
  }
  .main-nav .wp-block-site-logo,
  .main-nav .wp-block-buttons {
    flex-shrink: 0;
  }
  .main-nav .wp-block-button__link {
    white-space: nowrap;
    padding-left: 1.1em !important;
    padding-right: 1.1em !important;
  }
}