/* Match southpod.com.au header styling */
.site-title { font-size: 28px !important; font-weight: 400 !important; line-height: 1.2 !important; }
.site-title a, .site-title a:hover, .site-title a:focus { color: #8B8B8B !important; font-weight: 400 !important; }

/* Header bar: 15mm tall */
.ast-primary-header-bar, .main-header-bar { min-height: 15mm !important; height: 15mm !important; padding-top: 0 !important; padding-bottom: 0 !important; }

@media (min-width: 992px) {
  .ast-builder-menu-1 .menu-item > a { font-size: 13px !important; padding: 0 9px !important; white-space: nowrap; text-transform: uppercase !important; letter-spacing: 0.4px; font-weight: 700 !important; }
  .site-header-section.site-header-section-right { flex-wrap: nowrap; }
}

/* Hero checklist */
.hero-checklist { list-style: none !important; padding-left: 0 !important; color: #ffffff; font-weight: 500; }
.hero-checklist li { position: relative; padding-left: 38px; margin-bottom: 14px; font-size: 17px; line-height: 1.4; }
.hero-checklist li::before { content: ""; position: absolute; left: 0; top: 2px; width: 22px; height: 22px; background: rgba(0,0,0,0.4); border-radius: 4px; }
.hero-checklist li::after { content: ""; position: absolute; left: 6px; top: 7px; width: 11px; height: 6px; border-left: 3px solid #ffffff; border-bottom: 3px solid #ffffff; transform: rotate(-45deg); }

/* Phone CTA banner - full width travel across page */
.phone-cta-banner { width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
.phone-cta-row { display: flex; align-items: center; gap: 28px; max-width: 1400px; margin: 0 auto; flex-wrap: wrap; }
.phone-cta-icon { width: 70px; height: 70px; border-radius: 50%; border: 3px solid #ffffff; display: flex; align-items: center; justify-content: center; color: #ffffff; flex: 0 0 auto; }
.phone-cta-icon svg { width: 32px; height: 32px; }
.phone-cta-text { flex: 1 1 auto; min-width: 220px; color: #ffffff; }
.phone-cta-heading { font-size: 30px !important; font-weight: 700 !important; color: #ffffff !important; margin: 0 0 6px 0 !important; line-height: 1.2; }
.phone-cta-sub { font-size: 16px; color: #ffffff; margin: 0; opacity: 0.95; }
.phone-cta-action { flex: 0 0 auto; }
.phone-cta-button { display: inline-block; background: #ffffff; color: #1FB6FF !important; padding: 14px 32px; border-radius: 6px; font-weight: 700; font-size: 16px; text-decoration: none; transition: all 0.2s; }
.phone-cta-button:hover { background: #f0f0f0; }

/* Force WP block columns to render side-by-side on desktop */
@media (min-width: 782px) {
  .wp-block-columns { display: flex !important; gap: 40px; flex-wrap: nowrap; }
  .wp-block-columns > .wp-block-column { flex: 1 1 0 !important; }
}

/* Footer 3-column layout (light on dark) */
.site-footer .ast-builder-grid-row { max-width: 1280px !important; }
.footer-3col { display: grid; grid-template-columns: 1.2fr 1fr 1.3fr; gap: 60px; padding: 60px 80px 40px; color: #555; }
.footer-col { color: #d6d8db; }
.footer-col h3.footer-heading { font-size: 22px; font-weight: 700; color: #ffffff; margin: 0 0 20px 0; line-height: 1.2; }
.footer-book-btn { display: inline-block; background: #1FB6FF; color: #fff !important; padding: 12px 28px; border-radius: 4px; font-weight: 700; text-decoration: none; margin-bottom: 24px; white-space: nowrap; }
.footer-book-btn:hover { background: #00ADFF; }
.footer-contact { line-height: 1.8; color: #d6d8db; margin: 0 0 20px 0; }
.footer-contact strong { color: #ffffff; }
.footer-social { display: flex; gap: 12px; margin-top: 16px; }
.footer-social a { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; border-radius: 50%; background: #1FB6FF; color: #fff !important; transition: background 0.2s; }
.footer-social a:hover { background: #00ADFF; }
.footer-located a { color: #ffffff !important; text-decoration: none; font-weight: 600; }
.footer-links { list-style: none; padding: 0; margin: 16px 0 0 0; }
.footer-links li { margin-bottom: 10px; padding-left: 16px; position: relative; }
.footer-links li::before { content: "\203A"; position: absolute; left: 0; color: #1FB6FF; font-weight: 700; }
.footer-links a { color: #d6d8db !important; text-decoration: none; }
.footer-links a:hover { color: #1FB6FF !important; }
.footer-contact-form input, .footer-contact-form textarea { width: 100%; padding: 10px 12px; margin-bottom: 12px; border: 1px solid #444; background: #fff; color: #333; border-radius: 4px; font-family: inherit; font-size: 14px; box-sizing: border-box; }
.footer-contact-form textarea { resize: vertical; }
.footer-send-btn { background: #1FB6FF; color: #fff; border: none; padding: 12px 30px; border-radius: 4px; font-weight: 700; cursor: pointer; font-size: 14px; }
.footer-send-btn:hover { background: #00ADFF; }

/* Hide the duplicate Astra Social element row */
.site-footer .ast-builder-social-element-inner-wrap { display: none !important; }
.site-footer [data-section="section-fb-below-footer-builder"] { display: none !important; }

@media (max-width: 900px) { .footer-3col { grid-template-columns: 1fr; gap: 32px; padding: 30px 0; } }
.ast-footer-social-1-wrap, .ast-footer-social-wrap { display: none !important; }

/* Light footer background */
.site-footer, .site-footer .ast-builder-html-element, .site-below-footer-wrap { background-color: #f4f6f8 !important; color: #2c3e50 !important; }
.footer-3col { color: #555 !important; }
.footer-col { color: #555 !important; }
.footer-col h3.footer-heading { color: #2c3e50 !important; }
.footer-contact { color: #555 !important; }
.footer-contact strong { color: #2c3e50 !important; }
.footer-located a { color: #2c3e50 !important; }
.footer-links a { color: #555 !important; }
.footer-links a:hover { color: #1FB6FF !important; }
.footer-contact-form input, .footer-contact-form textarea { background: #ffffff !important; border: 1px solid #d0d4d8 !important; color: #2c3e50 !important; }
.site-below-footer-wrap, .ast-below-footer-section-1, .ast-small-footer { color: #555 !important; }
.site-below-footer-wrap a { color: #555 !important; }
.site-primary-footer-wrap, .site-below-footer-wrap, .ast-builder-footer-grid-columns, .site-footer { background-color: #f4f6f8 !important; }

/* Footer full width override */
.site-footer .ast-builder-grid-row, .site-primary-footer-wrap .ast-builder-grid-row-container, .site-primary-footer-wrap > div { max-width: none !important; width: 100% !important; }
.site-primary-footer-wrap .site-footer-section { padding: 0 !important; }

/* Footer widget full bleed */
.site-primary-footer-wrap .ast-builder-html-element { width: 100%; }
.site-primary-footer-wrap .site-footer-section { flex: 1 1 100% !important; max-width: 100% !important; }
.site-primary-footer-wrap .ast-builder-grid-row { display: block !important; }

/* Compact Podiatric Services header (cover block) */
.wp-block-cover.alignfull:has(.wp-block-heading:contains('Podiatric')) { min-height: 0 !important; padding-top: 30px !important; padding-bottom: 30px !important; }
.entry-content > .wp-block-cover.alignfull[style*='min-height'] + .wp-block-group { margin-top: 20px; }
/* Generic shrink for any cover block on Home that isn't the hero */
.wp-block-cover:not(:first-of-type) { padding-top: 30px !important; padding-bottom: 30px !important; min-height: auto !important; }

/* Cover blocks travel full viewport edge-to-edge */
.entry-content .wp-block-cover.alignfull { width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; }

/* Hide Astra page title (the small 'About Us' below the wordmark) */
.ast-normal-title-enabled .ast-archive-description, body.page .ast-archive-description, .ast-page-title, body.page .entry-title { display: none !important; }
.ast-archive-title, .page-title.ast-archive-title { display: none !important; }

/* Vertical divider between Andrew and Christine bios */
@media (min-width: 768px) {
  .team-bios-columns > .wp-block-column:first-child { border-right: 1px solid #d6dadd; padding-right: 30px; }
  .team-bios-columns > .wp-block-column:last-child { padding-left: 30px; }
}

/* === SERVICES HUB — CARD GRID === */
.services-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 20px;
}
@media (max-width: 1024px) {
  .services-card-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .services-card-grid { grid-template-columns: 1fr; gap: 20px; }
}
.service-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 2px 6px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
  text-decoration: none !important;
  color: inherit !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  border: 1px solid #eef0f2;
}
.service-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 28px rgba(0,0,0,0.10), 0 4px 8px rgba(0,0,0,0.06);
  border-color: #00ADFF;
}
.service-card-img {
  width: 100%;
  height: 200px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.service-card-body {
  padding: 22px 24px 26px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.service-card-body h3 {
  font-size: 19px !important;
  font-weight: 700 !important;
  color: #1E2B38 !important;
  margin: 0 0 10px !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
}
.service-card-body p {
  font-size: 14.5px;
  color: #555;
  line-height: 1.55;
  margin: 0 0 16px;
  flex: 1;
}
.service-card-cta {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  color: #00ADFF;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.service-card:hover .service-card-cta { color: #008fcc; }

/* === SERVICES NAV DROPDOWN === */
.main-header-menu .menu-item-has-children > .sub-menu,
#site-navigation .menu-item-has-children > .sub-menu {
  background: #ffffff !important;
  box-shadow: 0 6px 18px rgba(0,0,0,0.12) !important;
  border-top: 3px solid #00ADFF !important;
  min-width: 240px !important;
  padding: 6px 0 !important;
}
.main-header-menu .menu-item-has-children > .sub-menu .menu-link,
#site-navigation .menu-item-has-children > .sub-menu .menu-link {
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.4px !important;
  color: #555 !important;
  padding: 10px 18px !important;
  line-height: 1.4 !important;
}
.main-header-menu .menu-item-has-children > .sub-menu .menu-link:hover,
#site-navigation .menu-item-has-children > .sub-menu .menu-link:hover {
  background: #f4f6f8 !important;
  color: #00ADFF !important;
}
.main-header-menu .menu-item-has-children > a::after,
#site-navigation .menu-item-has-children > a::after {
  content: " \25BE";
  font-size: 10px;
  margin-left: 4px;
  opacity: 0.7;
}


/* === HIDE PAGE TITLES on hub pages with cover hero === */
.page-id-1454 .entry-title, .page-id-1453 .entry-title, .page-id-1443 .entry-title, .page-id-1455 .entry-title, .page-id-1592 .entry-title, .page-id-1593 .entry-title, .page-id-1594 .entry-title, .page-id-1595 .entry-title, .page-id-1596 .entry-title, .page-id-1597 .entry-title, .page-id-1588 .entry-title, .page-id-1611 .entry-title, .page-id-1612 .entry-title, .page-id-1613 .entry-title, .page-id-1614 .entry-title, .page-id-1691 .entry-title, .page-id-1651 .entry-title { display: none !important; }
.page-id-1454 .ast-archive-description, .page-id-1454 .ast-page-title { display: none !important; }


/* === CONDITIONS PAGES === */
.page-id-1622 .entry-title, .page-id-1623 .entry-title, .page-id-1624 .entry-title, .page-id-1625 .entry-title, .page-id-1626 .entry-title, .page-id-1627 .entry-title, .page-id-1628 .entry-title, .page-id-1629 .entry-title, .page-id-1630 .entry-title, .page-id-1631 .entry-title, .page-id-1632 .entry-title, .page-id-1633 .entry-title, .page-id-1634 .entry-title { display: none !important; }

/* Condition page bullet lists */
ul.condition-list { list-style: none; padding-left: 0; margin: 12px 0 24px; }
ul.condition-list li { position: relative; padding: 6px 0 6px 24px; color: #555; font-size: 16px; line-height: 1.6; }
ul.condition-list li::before { content: ''; position: absolute; left: 4px; top: 14px; width: 8px; height: 8px; background: #00ADFF; border-radius: 50%; }

/* Make Conditions long dropdown scroll if it overflows */
.main-header-menu .menu-item-has-children > .sub-menu, #site-navigation .menu-item-has-children > .sub-menu { max-height: 80vh; overflow-y: auto; }

/* Tighter top-level nav padding now we have 10 items */
.main-header-menu .menu-link, #site-navigation .menu-link { padding-left: 7px !important; padding-right: 7px !important; }
.main-header-menu .menu-item-has-children > .sub-menu .menu-link, #site-navigation .menu-item-has-children > .sub-menu .menu-link { padding-left: 18px !important; padding-right: 18px !important; }


/* === ORTHOTIC THERAPY PAGE === */
.orthotic-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; max-width: 1180px; margin: 0 auto; }
@media (max-width: 1024px) { .orthotic-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .orthotic-grid { grid-template-columns: 1fr; } }
.orthotic-card { background: #ffffff; border-radius: 8px; padding: 26px 22px; box-shadow: 0 2px 6px rgba(0,0,0,0.05); border: 1px solid #eef0f2; border-top: 3px solid #00ADFF; }
.orthotic-card h3 { font-size: 17px !important; font-weight: 700 !important; color: #1E2B38 !important; margin: 0 0 10px !important; line-height: 1.3 !important; }
.orthotic-card p { font-size: 14px; color: #555; line-height: 1.6; margin: 0; }

.orthotic-process { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; max-width: 1180px; margin: 0 auto; padding: 0 20px; }
@media (max-width: 1024px) { .orthotic-process { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .orthotic-process { grid-template-columns: 1fr; } }
.orthotic-step { text-align: center; padding: 10px; }
.orthotic-step-num { display: inline-flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 50%; background: #00ADFF; color: #ffffff; font-size: 22px; font-weight: 700; margin: 0 auto 14px; }
.orthotic-step h3 { font-size: 17px !important; font-weight: 700 !important; color: #1E2B38 !important; margin: 0 0 8px !important; line-height: 1.3 !important; }
.orthotic-step p { font-size: 14px; color: #555; line-height: 1.55; margin: 0; }

.sco-link-btn { display: inline-block; padding: 14px 26px; background: #d6bb80; color: #182a3a !important; font-weight: 700; font-size: 15px; text-decoration: none !important; border-radius: 6px; letter-spacing: 0.3px; transition: all 0.2s; }
.sco-link-btn:hover { background: #ffffff; color: #182a3a !important; }
@media (max-width: 1024px) { .sco-link-btn { margin-top: 16px; } }

.page-id-1594 .entry-title { display: none !important; }


/* === CONDITIONS HUB CARDS === */
.service-card-label { display: block; font-size: 11px; font-weight: 700; color: #8B8B8B; letter-spacing: 1.5px; text-transform: uppercase; margin-bottom: 8px; }
.conditions-card-grid .service-card-img { height: 230px; }
.conditions-card-grid .service-card-body { padding: 26px 26px 30px; }
.conditions-card-grid .service-card-body h3 { font-size: 22px !important; margin-bottom: 14px !important; }
.conditions-card-grid .service-card-body p { font-size: 14.5px; line-height: 1.65; }
.conditions-card-grid .service-card:hover .service-card-label { color: #00ADFF; }


/* === FAQ ACCORDION === */
.spc-faq-wrap { max-width: 820px; margin: 0 auto; }
.spc-faq-group-title { font-size: 22px !important; font-weight: 700 !important; color: #1E2B38 !important; letter-spacing: 0.3px !important; margin: 32px 0 18px !important; padding-bottom: 10px !important; border-bottom: 2px solid #00ADFF !important; }
.spc-faq-group-title:first-child { margin-top: 0 !important; }
.spc-faq { background: #ffffff; border-radius: 10px; box-shadow: 0 2px 6px rgba(13,39,64,0.05); margin-bottom: 12px; overflow: hidden; transition: box-shadow 0.2s ease; }
.spc-faq[open] { box-shadow: 0 8px 24px rgba(13,39,64,0.10); }
.spc-faq summary { list-style: none; padding: 22px 26px; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; user-select: none; transition: background 0.15s ease; }
.spc-faq summary::-webkit-details-marker { display: none; }
.spc-faq summary::marker { display: none; content: ''; }
.spc-faq summary:hover { background: #f9fafb; }
.spc-faq summary h3 { margin: 0 !important; font-size: 16.5px !important; font-weight: 700 !important; color: #1E2B38 !important; line-height: 1.4 !important; flex: 1; }
.spc-faq-icon { flex: 0 0 32px; height: 32px; border-radius: 50%; background: #f0f4f7; color: #00ADFF; display: flex; align-items: center; justify-content: center; font-size: 22px; font-weight: 400; transition: transform 0.25s ease, background 0.15s ease, color 0.15s ease; line-height: 0; padding-bottom: 2px; }
.spc-faq[open] .spc-faq-icon { transform: rotate(45deg); background: #00ADFF; color: #ffffff; }
.spc-faq-body { padding: 0 26px 24px; }
.spc-faq-body p { margin: 0 !important; font-size: 15.5px !important; line-height: 1.7 !important; color: #555555 !important; }
.spc-faq-body p a { color: #00ADFF; text-decoration: underline; }
.spc-still { text-align: center; margin-top: 48px; padding: 36px 32px; background: #ffffff; border-radius: 12px; box-shadow: 0 2px 6px rgba(13,39,64,0.05); }
.spc-still h3 { font-size: 22px !important; font-weight: 700 !important; color: #1E2B38 !important; margin: 0 0 12px !important; }
.spc-still p { font-size: 15px !important; color: #555555 !important; margin: 0 0 22px !important; line-height: 1.6 !important; max-width: 540px; margin-left: auto; margin-right: auto; }
.spc-still-buttons { display: inline-flex; gap: 12px; flex-wrap: wrap; justify-content: center; }
.spc-still-buttons a { display: inline-flex; align-items: center; padding: 13px 24px; border-radius: 6px; font-weight: 700; text-decoration: none; font-size: 14px; letter-spacing: 0.06em; text-transform: uppercase; transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease; }
.spc-still-primary { background: #00ADFF; color: #ffffff !important; }
.spc-still-primary:hover { background: #0095e0; transform: translateY(-2px); box-shadow: 0 12px 24px rgba(0,173,255,0.28); }
.spc-still-secondary { background: transparent; color: #1E2B38 !important; border: 1.5px solid #1E2B38; }
.spc-still-secondary:hover { background: #1E2B38; color: #ffffff !important; transform: translateY(-2px); }


/* === BLOG GRID === */
.spc-blog-grid-wrap { max-width: 1180px; margin: 0 auto; padding: 0 20px; }
.spc-blog-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; }
@media (max-width: 1024px) { .spc-blog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .spc-blog-grid { grid-template-columns: 1fr; gap: 22px; } }
.spc-blog-card { display: block; text-decoration: none !important; color: inherit !important; background: #ffffff; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 6px rgba(13,39,64,0.05); transition: transform 0.25s ease, box-shadow 0.25s ease; border: 1px solid #eef0f2; }
.spc-blog-card:hover { transform: translateY(-4px); box-shadow: 0 14px 30px rgba(13,39,64,0.12); }
.spc-blog-img { width: 100%; height: 230px; background-size: cover; background-position: center; background-repeat: no-repeat; background-color: #f4f6f8; }
.spc-blog-img-empty { background: linear-gradient(135deg, #00ADFF 0%, #1FB6FF 100%); }
.spc-blog-card-body { padding: 24px 26px 28px; }
.spc-blog-card-body h3 { margin: 0 0 8px !important; font-size: 19px !important; font-weight: 700 !important; color: #00ADFF !important; line-height: 1.35 !important; text-decoration: underline !important; text-decoration-thickness: 1px !important; text-underline-offset: 3px !important; transition: color 0.15s ease; }
.spc-blog-card:hover h3 { color: #008fcc !important; }
.spc-blog-meta { font-size: 13px; color: #8B8B8B; margin: 0 0 14px; letter-spacing: 0.2px; }
.spc-blog-card-body p { margin: 0 !important; font-size: 15px !important; line-height: 1.65 !important; color: #555 !important; }


/* === DAPTO HEADER === */
.site-header,
.ast-primary-header-bar,
.main-header-bar,
.ast-above-header,
.ast-below-header { background-color: #EBF7FE !important; }

.site-title, .site-description,
.ast-site-title-wrap .site-title,
.ast-site-title-wrap .site-description,
.ast-site-identity .site-title,
.ast-site-identity .site-description { display: none !important; }

.custom-logo-link img,
.site-logo-img img { max-height: 56px !important; height: 56px !important; width: auto !important; }

.main-header-menu .menu-link,
#site-navigation .menu-link {
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #1E2B38 !important;
  padding: 8px 16px !important;
}
.main-header-menu .menu-link:hover,
.main-header-menu .current-menu-item > .menu-link,
#site-navigation .menu-link:hover,
#site-navigation .current-menu-item > .menu-link { color: #00ADFF !important; }

.main-header-menu .current-menu-item > .menu-link,
#site-navigation .current-menu-item > .menu-link {
  text-decoration: underline !important;
  text-underline-offset: 6px !important;
  text-decoration-thickness: 2px !important;
}

.main-header-menu .menu-item-1503 > a,
#site-navigation .menu-item-1503 > a,
.main-header-menu li a[href*="bookings.nookal.com"],
#site-navigation li a[href*="bookings.nookal.com"] {
  display: inline-flex !important;
  align-items: center !important;
  padding: 11px 22px !important;
  border: 1.5px solid #1E2B38 !important;
  border-radius: 6px !important;
  color: #1E2B38 !important;
  background: transparent !important;
  font-weight: 700 !important;
  font-size: 14.5px !important;
  text-transform: none !important;
  letter-spacing: 0.2px !important;
  margin-left: 12px !important;
  transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease !important;
}
.main-header-menu .menu-item-1503 > a:hover,
.main-header-menu li a[href*="bookings.nookal.com"]:hover {
  background: #1E2B38 !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}

.ast-primary-header-bar .ast-builder-grid-row-container-inner {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
/* === END DAPTO HEADER === */


/* === DAPTO HEADER PATCH === */
.ast-primary-header-bar .ast-builder-grid-row, .ast-primary-header-bar .ast-builder-grid-row-container-inner { padding-right: 24px !important; padding-left: 24px !important; }
.main-header-menu .menu-item-1503 > a, #site-navigation .menu-item-1503 > a, .main-header-menu li a[href*="bookings.nookal.com"], #site-navigation li a[href*="bookings.nookal.com"] { margin-right: 0 !important; }
.ast-builder-layout-element[data-section="section-primary-menu"] { overflow: visible !important; }
.ast-primary-header { overflow: visible !important; }
/* === END DAPTO HEADER PATCH === */


/* === DAPTO HEADER FIT === */
.main-header-menu .menu-item-1503 > a, #site-navigation .menu-item-1503 > a, .main-header-menu li a[href*="bookings.nookal.com"], #site-navigation li a[href*="bookings.nookal.com"] { padding: 8px 18px !important; font-size: 13.5px !important; line-height: 1.4 !important; background: #ffffff !important; }
.main-header-menu .menu-item-1503 > a:hover, #site-navigation .menu-item-1503 > a:hover, .main-header-menu li a[href*="bookings.nookal.com"]:hover, #site-navigation li a[href*="bookings.nookal.com"]:hover { background: #1E2B38 !important; color: #ffffff !important; }
.ast-primary-header-bar .ast-builder-grid-row-container-inner { padding-top: 16px !important; padding-bottom: 16px !important; }
/* === END DAPTO HEADER FIT === */


/* === DAPTO HEADER REFINE === */
/* Restore white header background */
.site-header, .ast-primary-header-bar, .main-header-bar, .ast-above-header, .ast-below-header { background-color: #ffffff !important; }

/* Spread nav items evenly across the available menu container width */
.ast-builder-menu-1 .main-navigation, .ast-builder-menu-1 .main-navigation > div { width: 100% !important; }
.main-header-menu, #site-navigation .menu, .ast-builder-menu-1 .main-header-menu { display: flex !important; flex-wrap: nowrap !important; justify-content: space-between !important; align-items: center !important; width: 100% !important; }
.main-header-menu > li, #site-navigation .menu > li, .ast-builder-menu-1 .main-header-menu > li { flex: 0 0 auto !important; }

/* Book Online — fit cleanly within the header height */
.main-header-menu .menu-item-1503 > a, #site-navigation .menu-item-1503 > a, .main-header-menu li a[href*="bookings.nookal.com"], #site-navigation li a[href*="bookings.nookal.com"] { padding: 6px 16px !important; font-size: 13px !important; line-height: 1.4 !important; background: #ffffff !important; border: 1.5px solid #1E2B38 !important; border-radius: 6px !important; min-height: 0 !important; }
.main-header-menu .menu-item-1503 > a:hover, #site-navigation .menu-item-1503 > a:hover, .main-header-menu li a[href*="bookings.nookal.com"]:hover, #site-navigation li a[href*="bookings.nookal.com"]:hover { background: #1E2B38 !important; color: #ffffff !important; }

/* Slimmer header padding so the button + nav share a consistent baseline */
.ast-primary-header-bar .ast-builder-grid-row-container-inner { padding-top: 14px !important; padding-bottom: 14px !important; }
/* === END DAPTO HEADER REFINE === */


/* === BIOMECH MOBILE STACK === */
@media (max-width: 768px) {
  .page-id-1691 .wp-block-columns > .wp-block-column:nth-child(2) { margin-bottom: 32px !important; }
  .page-id-1691 .wp-block-columns > .wp-block-column:first-child > .wp-block-heading:first-child { margin-top: 16px !important; }
}
/* === END BIOMECH MOBILE STACK === */


/* === STACK SITE TITLE: "Southern Podiatry" / "Clinic" === */
.ast-site-title-wrap .site-title:only-child,
.ast-site-title-wrap .site-title {
  display: inline-block !important;
  max-width: 240px;
  line-height: 1.05 !important;
  margin: 0 !important;
  padding-left: 0 !important;
}
.site-title a { display: inline-block; padding-left: 0 !important; margin-left: 0 !important; }

/* 3mm gap between logo and title */
.ast-site-identity .ast-site-logo-img + .ast-site-title-wrap,
.site-branding .site-logo-img + .ast-site-title-wrap,
.ast-site-identity .ast-site-title-wrap {
  margin-left: 3mm !important;
  padding-left: 0 !important;
}
.ast-site-identity .site-logo-img,
.ast-site-identity .ast-site-logo-img { margin-right: 0 !important; padding-right: 0 !important; }

@media (max-width: 768px) {
  .ast-site-title-wrap .site-title:only-child,
  .ast-site-title-wrap .site-title {
    display: inline-block !important;
    max-width: 170px;
    font-size: 22px !important;
  }
}

/* HEADER HEIGHTS */
.ast-primary-header-bar,
.main-header-bar,
.ast-main-header-wrap {
  min-height: 0 !important;
  height: auto !important;
}

/* HOME: 80px header (left-aligned, untouched) */
body.home .ast-primary-header-bar .site-primary-header-wrap,
body.home .ast-primary-header-bar .ast-builder-grid-row-container {
  min-height: 80px !important;
  height: 80px !important;
  align-items: center !important;
}
body.home .ast-primary-header-bar .ast-builder-grid-row {
  align-items: center !important;
  height: 80px !important;
}

/* INNER PAGES: 50px header, logo+title vertically centred top-to-bottom */
body:not(.home) .ast-primary-header-bar .site-primary-header-wrap,
body:not(.home) .ast-primary-header-bar .ast-builder-grid-row-container {
  min-height: 50px !important;
  height: 50px !important;
  align-items: center !important;
}
body:not(.home) .ast-primary-header-bar .ast-builder-grid-row {
  align-items: center !important;
  height: 50px !important;
  flex-direction: row !important;
}
body:not(.home) .ast-primary-header-bar .site-header-primary-section-left,
body:not(.home) .ast-primary-header-bar .site-header-section-left {
  align-items: center !important;
  align-self: center !important;
  height: 50px !important;
}
body:not(.home) .ast-primary-header-bar .ast-site-identity {
  align-items: center !important;
  align-self: center !important;
  height: 50px !important;
  display: flex !important;
  transform: translateY(3mm) !important;
}

.ast-primary-header-bar .ast-builder-layout-element {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
/* === END STACK SITE TITLE === */


/* === FIX: Mobile nav items stack vertically on phones, not overflow horizontally === */
@media (max-width: 921px) {
  .ast-mobile-header-wrap .main-header-menu,
  #ast-hf-mobile-menu {
    flex-wrap: wrap !important;
    flex-direction: column !important;
    width: 100% !important;
  }
  .ast-mobile-header-wrap .main-header-menu > li,
  #ast-hf-mobile-menu > li {
    flex: 1 1 100% !important;
    width: 100% !important;
  }
}/* Push post content below the header/nav - post ID 2071 */
.postid-2071 .site-content .ast-container {
	  padding-top: 100px !important;
}
}