/* Final universal page wrapper: applies after component/plugin styles. */
body.gd-site-style-guide .gd-layout > .gd-hero,
body.gd-site-style-guide .gd-section > .gd-hero { padding:clamp(28px,3vw,36px) var(--gd-space-pad); }
body.gd-site-style-guide .gd-layout > .gd-hero:not(.gd-hero--split),
body.gd-site-style-guide .gd-section > .gd-hero:not(.gd-hero--split) { display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:0; }
body.gd-site-style-guide .gd-hero .gd-hero-copy { display:flex; flex-direction:column; align-items:flex-start; }
body.gd-site-style-guide .gd-hero .gd-kicker { margin:0 0 8px; color:var(--gd-brand-navy); }

/* Marketplace kicker is a shared brand element; keep it navy against third-party theme styles. */
body.gd-site-style-guide .gd-marketplace-page-intro .gd-kicker {
  color:var(--gd-brand-navy);
}

body.gd-site-style-guide .gd-hero h1 { margin:0 0 16px; }
body.gd-site-style-guide .gd-hero > :where(p:not(.gd-kicker)),
body.gd-site-style-guide .gd-hero .gd-hero-copy > :where(p:not(.gd-kicker)) { margin:0 0 20px; }
body.gd-site-style-guide .gd-hero > .gd-actions,
body.gd-site-style-guide .gd-hero .gd-hero-copy > .gd-actions { margin:0; }


/* FluentCommunity uses variant sidebar class names by route; none may escape the page shell. */
body.gd-community-shell :is(.fcom_layout_side,.fcom_layout_sidebar,.fcom_sidebar,.fcom_side,.fcom_left_side,.fcom_left_sidebar,.fhr_sidebar,[class*="layout_side"],[class*="layout_sidebar"]) {
  position:relative;
  inset:auto;
  top:auto;
  right:auto;
  bottom:auto;
  left:auto;
  transform:none;
  z-index:auto;
  flex:0 0 280px;
  width:280px;
  height:auto;
  min-height:0;
}
body.gd-community-shell :is(.fcom_full_layout,.fcom_layout,.fhr_content_layout) { position:relative; inset:auto; transform:none; }
@media (max-width:760px) {
  body.gd-community-shell :is(.fcom_layout_side,.fcom_layout_sidebar,.fcom_sidebar,.fcom_side,.fcom_left_side,.fcom_left_sidebar,.fhr_sidebar,[class*="layout_side"],[class*="layout_sidebar"]) { width:100%; flex-basis:auto; }
}


/* Mandatory public-page shell. Every WordPress or integrated-plugin route enters this frame. */
body.gd-site-style-guide #primary > .content-container,
body.gd-site-style-guide #primary > .site-container,
body.gd-site-style-guide #primary > .hp-page.site-main,
body.gd-site-style-guide #primary .hp-page.site-main,
body.gd-site-style-guide .tribe-events-view,
body.gd-community-shell #main {
  width:min(100%,var(--gd-content-width));
  min-width:0;
  margin-inline:auto;
  border-radius:var(--gd-shell-radius);
  background:var(--gd-surface);
  box-shadow:var(--gd-shadow-raised);
}
body.gd-site-style-guide :is(.entry-hero,.page-hero-section):empty { display:none !important; }


/* Universal hero is content in the shared frame, never a separate white card. */
body.gd-site-style-guide .gd-hero {
  display:grid;
  min-width:0;
  grid-template-columns:minmax(0,1fr);
  gap:var(--gd-space-gap);
  align-items:center;
  position:relative;
  margin-top:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.gd-site-style-guide .gd-hero > .gd-hero-copy {
  position:static;
}
body.gd-site-style-guide .gd-hero > .gd-kicker,
body.gd-site-style-guide .gd-hero > .gd-hero-copy > .gd-kicker {
  top:-25px;
  left:var(--gd-space-pad);
  z-index:1;
  position:static;
  inset:auto;
  display:block;
  margin:0 0 8px;
  color:var(--gd-brand-navy);
}


/* Kadence's generated page/archive title band is replaced by the universal breadcrumb + content frame. */
body.gd-site-style-guide :is(.entry-hero-container,.entry-hero-container-inner,.entry-hero,.page-hero-section,.archive-hero,.archive-hero-container,.archive-title-container) {
  display:none;
  min-height:0;
  margin:0;
  padding:0;
}


/* Canonical Events-style public page flow. The title and lead are part of the
   same white content shell as the page body—never a nested hero card. */
body.gd-site-style-guide .gd-universal-page-flow {
  min-width:0;
}
body.gd-site-style-guide .gd-universal-page-header .gd-kicker {
  display:block;
  margin:0 0 10px;
  color:var(--gd-brand-navy);
}
body.gd-site-style-guide .gd-universal-page-header h1 {
  margin:0 0 18px;
  color:var(--gd-brand-navy);
  font-size:clamp(34px,4vw,52px);
  line-height:1.08;
}
body.gd-site-style-guide .gd-universal-page-header .gd-lead {
  max-width:none;
  margin:0;
  color:var(--gd-content-navy);
  font-size:clamp(16px,1.45vw,19px);
  line-height:1.55;
}
body.gd-site-style-guide .gd-universal-page-flow > .gd-layout,
body.gd-site-style-guide .gd-universal-page-flow > .gd-section,
body.gd-site-style-guide .gd-universal-page-flow > .wp-block-group {
  width:100%;
  max-width:none;
  margin-top:0;
}
body.gd-site-style-guide .gd-universal-page-flow > .gd-layout > :first-child,
body.gd-site-style-guide .gd-universal-page-flow > .gd-section > :first-child {
  margin-top:0;
}


/* ==========================================================================
   GLOBAL HEADER CONTRACT
   One source for the shell, textured header, logo, and desktop menu tabs.
   ========================================================================== */
body.gd-site-style-guide #masthead {
  overflow:visible;
  border-bottom:2px solid var(--gd-brand-lime);
  background:var(--gd-brand-navy);
  box-shadow:0 8px 24px rgba(var(--gd-brand-navy-rgb),.16);
}
body.gd-site-style-guide #masthead .site-top-header-wrap {
  display:none;
}
body.gd-site-style-guide #masthead .site-main-header-wrap .site-header-row-container-inner,
body.gd-site-style-guide #masthead .site-main-header-inner-wrap {
  height:96px;
  min-height:96px;
}
body.gd-site-style-guide #masthead .site-container {
  width:calc(100% - 40px);
  max-width:1600px;
}
body.gd-site-style-guide #masthead .site-branding,
body.gd-site-style-guide #mobile-header .site-branding {
  padding:0;
}
body.gd-site-style-guide #masthead .site-branding > .brand.has-logo-image,
body.gd-site-style-guide #mobile-header .site-branding > .brand.has-logo-image {
  display:inline-block;
  padding:0;
  border-radius:12px;
  background:transparent;
  overflow:hidden;
  line-height:0;
}
body.gd-site-style-guide #masthead .site-branding img,
body.gd-site-style-guide #mobile-header .site-branding img {
  border-radius:0;
}
/* Reschedule: the booked details can't change, so the details step shows only the new time and the Confirm button. */
html body.gd-site-style-guide #reschedule-calendar .fcal_form_item { display:none !important; }
/* Appointment management: neutral receipt with aligned information and service rows. */
html body.gd-site-style-guide .gd-appointment-screen .gd-booking-step-header { margin-bottom:24px; }
html body.gd-site-style-guide .gd-appointment-screen .gd-booking-step-body { display:grid;gap:16px; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review { margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-info-panel { margin:0 0 24px;padding:0;border:0;border-radius:0;background:transparent; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-dogs { display:grid;gap:20px 28px;margin:0 0 24px;padding:0;border:0;border-radius:0;list-style:none; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-info-panel > .gd-review-dogs:first-child { grid-template-columns:repeat(3,minmax(0,1fr)); }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-dog { display:grid;grid-template-columns:minmax(0,1fr);gap:4px;min-width:0;width:auto;margin:0;padding:0;border:0;background:transparent;line-height:1.45; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-name { color:var(--gd-brand-navy);font-weight:700; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-info-panel > .gd-review-dogs:first-child .gd-review-name { color:var(--gd-receipt-muted);font-size:.85rem;font-weight:600; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-service { display:grid;grid-column:auto;grid-row:auto;gap:3px;min-width:0;overflow-wrap:anywhere; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-field-service-address { grid-column:span 2; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-price:empty { display:none; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-calendar { grid-column:1 / -1;gap:8px; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-calendar .gd-review-service { display:flex;flex-wrap:wrap;gap:8px; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-dogs[aria-label="Dogs and services"] { gap:0;border-top:1px solid var(--gd-receipt-border);border-bottom:1px solid var(--gd-receipt-border); }
html body.gd-site-style-guide .gd-appointment-screen .gd-review-dogs[aria-label="Dogs and services"] .gd-review-dog { grid-template-columns:minmax(90px,1fr) minmax(0,3fr) auto;gap:16px;padding:16px 0;border-bottom:1px solid var(--gd-receipt-border);align-items:start; }
html body.gd-site-style-guide .gd-appointment-screen .gd-review-dogs[aria-label="Dogs and services"] .gd-review-dog:last-child { border-bottom:0; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-service-detail { margin:0;color:var(--gd-receipt-muted);font-size:.85em;white-space:normal; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-price { text-align:right;color:var(--gd-brand-navy); }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-totals { display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;margin:0;padding:0;border:0;border-radius:0;background:transparent; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-totals > div { display:grid;gap:4px;margin:0;padding:0;border:0;background:transparent; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-totals > div:last-child { text-align:right; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-totals dt { margin:0;color:var(--gd-receipt-muted);font-size:.85rem; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-totals dd { margin:0;font-size:1rem;font-weight:700;color:var(--gd-brand-navy); }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-totals > div:last-child dd { font-size:1.5rem; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-cancel-form > p { margin:0 0 16px; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-cancel-form textarea { min-height:7em; }
html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review-actions { margin-top:24px;padding-top:20px;border-top:1px solid var(--gd-receipt-border); }
html body.gd-site-style-guide .gd-booking-step-screen a:not(.gd-btn) { color:var(--gd-brand-navy) !important;text-decoration:underline;text-decoration-color:var(--gd-brand-lime);text-underline-offset:3px; }
@media (max-width:760px) {
  html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-info-panel > .gd-review-dogs:first-child { grid-template-columns:minmax(0,1fr);gap:16px; }
  html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-field-service-address { grid-column:auto; }
  html body.gd-site-style-guide .gd-appointment-screen .gd-review-dogs[aria-label="Dogs and services"] .gd-review-dog { grid-template-columns:minmax(0,1fr) auto;gap:4px 12px; }
  html body.gd-site-style-guide .gd-appointment-screen .gd-review-dogs[aria-label="Dogs and services"] .gd-review-service { grid-column:1;grid-row:2; }
  html body.gd-site-style-guide .gd-appointment-screen .gd-review-dogs[aria-label="Dogs and services"] .gd-review-price { grid-column:2;grid-row:1; }
  html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review .gd-review-totals { gap:14px; }
  html body.gd-site-style-guide .gd-appointment-screen .gd-appointment-review-actions { align-items:flex-start; }
}
/* Booking confirmation: branded, readable, and compact enough to keep the receipt high on the page. */
html body.gd-site-style-guide .fcal_confirmation { font-size:1.04rem; line-height:1.45; }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_header { margin:0 0 10px; padding:14px 16px; border:0; border-radius:var(--gd-radius); background:var(--gd-surface); }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_header img { max-width:36px !important; }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_header h2 { margin:5px 0 2px; color:var(--gd-brand-navy); font-size:1.55rem; line-height:1.2; }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_header p { margin:0; color:var(--gd-content-navy); font-size:1rem; }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_section { display:grid; grid-template-columns:150px minmax(0,1fr); column-gap:20px; align-items:start; margin:0; padding:10px 16px; border:0; border-bottom:1px solid rgba(var(--gd-content-navy-rgb),.12); background:var(--gd-surface); }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_section * { background:transparent; }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_section_title h4 { margin:0; color:var(--gd-brand-navy); font-size:1rem; line-height:1.4; }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_section_content { grid-column:2; min-width:0; margin:0; color:var(--gd-content-navy); font-size:1.02rem; overflow-wrap:anywhere; }
html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_section_content p { margin:0 0 3px; }
@media (max-width:600px) {
  html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_section { grid-template-columns:minmax(0,1fr); row-gap:3px; padding:10px 14px; }
  html body.gd-site-style-guide .fcal_confirmation .fcal_confirm_section_content { grid-column:1; }
}
/* Booking calendars: everything is Phoenix time, so no time zone picker or line; phone numbers are US (+1) only. */
html body.gd-site-style-guide .gd-embedded-grooming-calendar :is(.fcal_timezone_select, .slot_timezone) { display:none !important; }
html body.gd-site-style-guide .gd-embedded-grooming-calendar .fcal_country_select { pointer-events:none; }
html body.gd-site-style-guide .gd-embedded-grooming-calendar .fcal_country_select .indicators { display:none !important; }
html body.gd-site-style-guide .gd-embedded-grooming-calendar .fcal_country_select input:not([type="hidden"]) { width:0 !important; min-width:0 !important; opacity:0; }
/* Grooming calendar: only the booked length shows, labelled as the total. */
html body.gd-site-style-guide .gd-embedded-grooming-calendar .fcal_duration[data-green-dog-locked="1"]::before { content:"Total: "; }
/* Header logo: the box is sized to the image (not letterboxed), so the link's rounded corners show, like the footer logo. */
body.gd-site-style-guide #masthead .custom-logo {
  width:auto;
  height:72px;
  max-height:72px;
  object-fit:fill;
}
/* Phone header: logo readable (not a tiny pill), book button and menu fit beside it. */
body.gd-site-style-guide #mobile-header .custom-logo { width:84px; max-width:none; height:auto; max-height:none; }
body.gd-site-style-guide #mobile-header .site-branding > .brand.has-logo-image { border-radius:8px; }
body.gd-site-style-guide #mobile-header .site-branding,
body.gd-site-style-guide #mobile-header .site-header-main-section-left,
body.gd-site-style-guide #mobile-header .site-header-main-section-right > .site-header-item:last-child { flex-shrink:0; }
body.gd-site-style-guide #mobile-header .site-main-header-wrap .site-container { padding-inline:14px; }
body.gd-site-style-guide #mobile-header .site-header-row { grid-template-columns:auto 1fr; column-gap:10px; }
body.gd-site-style-guide #mobile-header .site-header-main-section-right { justify-content:flex-end; min-width:0; }
html body.gd-site-style-guide #mobile-header .gd-book-utility { font-size:13px !important; padding-inline:10px !important; white-space:nowrap; min-width:0 !important; width:auto !important; }
@media (max-width:380px) {
  body.gd-site-style-guide #mobile-header .custom-logo { width:70px; }
  html body.gd-site-style-guide #mobile-header .gd-book-utility { font-size:12px !important; padding-inline:8px !important; }
}

body.gd-site-style-guide .gd-site-breadcrumb-wrap {
  position:relative;
  z-index:3;
  width:var(--gd-shell-width);
  margin:clamp(18px,2.4vw,28px) auto var(--gd-shell-breadcrumb-gap);
  margin-top:18px;
}
body.gd-site-style-guide #primary {
  width:100%;
  min-width:0;
  margin:0;
  padding:clamp(24px,4vw,48px) 16px;
  background:transparent;
  padding-top:16px;
}

body.gd-site-style-guide #primary > .content-container,
body.gd-site-style-guide #primary > .site-container {
  padding:var(--gd-space-pad);
}


/* Desktop primary navigation: clean links with a clear lime active indicator. */
@media (min-width:1025px) {
  body.gd-site-style-guide .site-header-item-main-navigation {
    align-items:flex-end;
  }
  body.gd-site-style-guide #site-navigation {
    margin-bottom:0;
  }
  body.gd-site-style-guide #site-navigation .primary-menu-container > ul > li.menu-item > a {
    box-sizing:border-box;
    min-height:44px;
    margin-inline:3px;
    padding:10px 12px 7px;
    border:0;
    border-bottom:3px solid transparent;
    border-radius:7px 7px 0 0;
    background:transparent;
    color:var(--gd-surface);
    font-size:16px;
    transition:background-color .18s ease,border-color .18s ease,color .18s ease;
  }
  /* Parent links and dropdowns are separate, non-overlapping targets. */
  body.gd-site-style-guide #site-navigation .primary-menu-container > ul > li.menu-item:has(> .dropdown-nav-special-toggle) {
    display:flex;
    align-items:stretch;
  }
  body.gd-site-style-guide #site-navigation .primary-menu-container > ul > li.menu-item > .dropdown-nav-special-toggle {
    /* Kadence uses important positioning and margin declarations. */
    position:static !important;
    pointer-events:auto;
    flex:0 0 24px;
    width:24px;
    margin:0 3px 0 0 !important;
    min-width:24px;
    min-height:44px;
  }
  body.gd-site-style-guide #site-navigation .primary-menu-container > ul > li.menu-item > a:where(:hover,:focus-visible) {
    border-bottom-color:var(--gd-brand-lime);
    background:rgba(var(--gd-surface-rgb),.10);
    color:var(--gd-surface);
  }
  body.gd-site-style-guide #site-navigation .primary-menu-container > ul > li:is(.current-menu-item,.current_page_item,.current-menu-ancestor,.gd-current-section) > a {
    border-bottom-color:var(--gd-brand-lime);
    background:rgba(var(--gd-surface-rgb),.12);
    color:var(--gd-surface);
  }
}

body.gd-site-style-guide .gd-kicker {
  display:block;
  margin:0 0 12px;
  font-size:var(--gd-kicker-size);
  font-weight:800;
  letter-spacing:.15em;
  line-height:1.25;
  text-transform:uppercase;
  color:var(--gd-brand-navy) !important;
}

body.gd-site-style-guide .gd-card {
  min-width:0;
  padding:var(--gd-card-padding);
  border:1px solid var(--gd-card-border);
  border-radius:var(--gd-radius);
  background:var(--gd-surface);
  box-shadow:var(--gd-shadow);
  overflow:hidden;
}
body.gd-site-style-guide .gd-card__media,
body.gd-site-style-guide .gd-media,
body.gd-site-style-guide .gd-media--contained {
  max-width:100%;
  overflow:hidden;
}
body.gd-site-style-guide .gd-card__media img,
body.gd-site-style-guide .gd-media img,
body.gd-site-style-guide .gd-media--contained img,
body.gd-site-style-guide img.gd-dog-photo {
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
}

body.gd-site-style-guide #colophon .footer-social {
  display:none;
}

@media (max-width:760px) {
  body.gd-site-style-guide #primary { padding-top:12px; }
  body.gd-site-style-guide .gd-site-breadcrumb-wrap {
  width:calc(100% - 20px);
  margin-top:12px;
}
}


/* Central family normalization: one background, shell, spacing, buttons, and media behavior site-wide. */
body.gd-site-style-guide {
  color:var(--gd-ink);
  font-size:18px;
  line-height:1.6;
  --global-palette1:var(--gd-brand-lime);
  --global-palette5:var(--gd-content-navy);
  --global-palette6:var(--gd-muted);
  --global-palette13:var(--gd-canvas);
  --global-palette15:var(--gd-canvas);
  --global-palette-btn-bg:var(--gd-brand-lime);
  --tec-color-accent-primary:var(--gd-accent-text);
  --global-palette-btn-bg-hover:var(--gd-accent-text);
  --tec-color-accent-primary-hover:var(--gd-accent-text);
}
body.gd-site-style-guide #primary > :is(.content-container,.site-container,.hp-page.site-main),
body.gd-site-style-guide .tribe-events-view,
body.gd-community-shell #main {
  max-width:var(--gd-content-width);
  overflow:hidden;
}
/* Keep media inside its column, except inside the community app, which sizes avatars and embeds itself. */
body.gd-site-style-guide :where(img,video,iframe,canvas,svg):not(:where(.fluent_com *)) {
  max-width:100% !important;
}
/* Community: profile-completion button in brand light green with navy text; spaces menu button not clipped. */
body.gd-site-style-guide .fcom_profile_complete_btn_wrap .el-button {
  --el-button-bg-color:rgba(var(--gd-brand-lime-rgb),.16);
  --el-button-border-color:var(--gd-brand-lime);
  --el-button-text-color:var(--gd-brand-navy);
  --el-button-hover-bg-color:rgba(var(--gd-brand-lime-rgb),.3);
  --el-button-hover-border-color:var(--gd-brand-lime);
  --el-button-hover-text-color:var(--gd-brand-navy);
  --el-button-active-bg-color:rgba(var(--gd-brand-lime-rgb),.3);
  --el-button-active-border-color:var(--gd-brand-lime);
  font-weight:700;
}
body.gd-site-style-guide .fcom_top_menu .space_opener { flex-shrink:0; overflow:visible; }
body.gd-site-style-guide :is(.slick-list,.slick-track,.splide,.splide__track,.swiper,.kt-post-grid-wrap,.wp-block-kadence-postgrid) {
  max-width:100%;
}
body.gd-site-style-guide :is(.slick-list,.splide__track,.swiper,.kt-post-grid-wrap,.wp-block-kadence-postgrid) {
  overflow:hidden;
}
/* Standalone WordPress and Community sign-in screens share the brand background and pill action. */
body.login .button-primary,
.fcom_auth_page .fcom_onboard_body :where(button[type=submit],.el-button--primary) {
  border-radius:999px !important;
}
body.login .button-primary:where(:hover,:focus-visible),
.fcom_auth_page .fcom_onboard_body :where(button[type=submit],.el-button--primary):where(:hover,:focus-visible) {
  border-color:var(--gd-accent-text) !important;
  background:var(--gd-accent-text) !important;
  color:var(--gd-surface) !important;
}

/* Account action dimensions come from the shared components button contract. */
body.gd-site-style-guide :is(.green-dog-edit-button,.green-dog-remove-button) {
  border-color:var(--gd-brand-navy);
  background:var(--gd-surface) !important;
  color:var(--gd-brand-navy);
}
body.gd-site-style-guide :is(.gd-profile-primary-action,.gd-book-grooming-action,.green-dog-book-button,.green-dog-edit-button,.green-dog-remove-button):where(:hover,:focus-visible) {
  border-color:var(--gd-accent-text);
  background:var(--gd-accent-text);
  color:var(--gd-surface);
}
body.gd-site-style-guide .gd-add-dog-toolbar {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 24px;
}
@media (max-width:760px) {
  body.gd-site-style-guide .gd-add-dog-toolbar {
    flex-direction:row;
    flex-wrap:nowrap;
    align-items:center;
    gap:8px;
  }
  body.gd-site-style-guide .gd-add-dog-toolbar > * { width:auto; }
}