.elementor-kit-8{--e-global-color-primary:#1251C0;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ========================================
   Pawvona Global Styles
   Applies to: Guides Row + Footer Disclaimer
   ======================================== */

/* --- Brand Colors ---
   Deep navy: #0d1b3d
   Accent blue: #1a73e8
   Soft gold: #fde68a
   Warm cream background: #fff7ed
*/

/* === Guides Row Cards === */
.pawvona-card {
  display: block;
  text-decoration: none;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #ffffff;
  overflow: hidden;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  box-shadow: 0 2px 8px rgba(13, 27, 61, 0.05);
}

.pawvona-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 18px rgba(13, 27, 61, 0.15);
}

.pawvona-card h3 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 6px;
  color: #0d1b3d;
}

.pawvona-card p {
  font-size: 14px;
  color: #334155;
  margin: 0;
}

/* Optional: make images inside cards scale smoothly */
.pawvona-card img {
  transition: transform 0.3s ease;
}

.pawvona-card:hover img {
  transform: scale(1.03);
}

/* === Footer Disclaimer Block === */
.pawvona-disclaimer {
  border: 1px solid #fde68a;
  background: #fff7ed;
  border-radius: 14px;
  padding: 20px 24px;
  margin-top: 32px;
  box-shadow: 0 4px 12px rgba(13, 27, 61, 0.08);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.pawvona-disclaimer h3 {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 8px;
  color: #0d1b3d;
}

.pawvona-disclaimer p {
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 10px;
  color: #334155;
}

.pawvona-disclaimer p strong {
  color: #1a73e8;
}

.pawvona-disclaimer:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(13, 27, 61, 0.12);/* ========================================
   Pawvona Guides Row + Footer Disclaimer
   ======================================== */

/* (your existing card + disclaimer CSS here) */


/* ========================================
   Hide Default WordPress Page Titles
   ======================================== */
h1.entry-title,
.page-title,
.elementor-page-title {
  display: none !important;
  visibility: hidden;
  height: 0;
  margin: 0;
  padding: 0;
}
}
/* ===== Pet Finder Results Page CSS ===== */
.page-id-349 {
/* 🐾 One gold paw before each label (Heading widget) */
.best-heading .elementor-heading-title,
.best-heading .elementor-heading-title a {
  position: relative;
  display: inline-block;
}

.best-heading .elementor-heading-title::before,
.best-heading .elementor-heading-title a::before {
  content: "🐾";
  color: #D4AF37;              /* Pawvona gold */
  font-size: 1.1em;
  margin-right: 6px;
  vertical-align: middle;
  line-height: 1;
}

/* 🏅 Blue ribbon beside "Best Overall" only */
.best-overall .elementor-heading-title,
.best-overall .elementor-heading-title a {
  position: relative;
  display: inline-block;
}

.best-overall .elementor-heading-title::after,
.best-overall .elementor-heading-title a::after {
  content: "🏅";
  margin-left: 6px;
  color: #1E5FC1;              /* Pawvona blue */
  font-size: 1.2em;
  vertical-align: middle;
}

.pf-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 460px; /* adjust until even */
}

.pf-bottom {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* 1) Make each card a flex column and equal height (desktop only) */
@media (min-width: 768px){
  .pf-card{ display:flex; flex-direction:column; min-height:480px; }
}

/* 2) Bottom group (image + button) stays pinned to bottom */
.pf-bottom{ margin-top:auto; display:flex; flex-direction:column; gap:12px; }

/* 3) Consistent image sizing */
.pf-bottom img{ width:100%; height:150px; object-fit:cover; display:block; border-radius:6px; }

/* 4) Button spans full width and stays aligned */
.pf-cta a, .pf-cta button{ display:block; width:100%; }

/* 5) Optional: keep blurbs tidy to 2 lines on desktop */
@media (min-width: 768px){
  .pf-sub{
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
    overflow:hidden;
  }
}

/* Center the Pros and Cons sections */
.pf-pros, .pf-cons {
  text-align: center;
  margin-top: 10px;
  margin-bottom: 15px;
}

/* Heading (Pros / Cons) styling */
.pf-pros strong {
  color: #2e7d32; /* green */
  font-size: 1rem;
  display: block;
  margin-bottom: 6px;
}

.pf-cons strong {
  color: #c62828; /* red */
  font-size: 1rem;
  display: block;
  margin-bottom: 6px;
}

/* List formatting */
.pf-pros ul, .pf-cons ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Pros: green check marks */
.pf-pros li::before {
  content: "✔️ ";
  color: #2e7d32;
  font-weight: bold;
  margin-right: 5px;
}

/* Cons: red X marks */
.pf-cons li::before {
  content: "✖️ ";
  color: #c62828;
  font-weight: bold;
  margin-right: 5px;
}

/* Text style */
.pf-pros li, .pf-cons li {
  font-size: 0.95rem;
  color: #333;
  line-height: 1.4em;
}
/* --- Pros & Cons Layout Refinement --- */

/* Ensure cards all align at bottom and same height */
.pf-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

/* Align Pros/Cons vertically consistent across cards */
.pf-pros, .pf-cons {
  text-align: center;
  margin-top: 15px;
  margin-bottom: 15px;
  min-height: 120px; /* ensures same height across all cards */
}

/* Pros and Cons headings */
.pf-pros strong,
.pf-cons strong {
  color: #5a6d7a; /* blue-grey tone */
  font-size: 1rem;
  display: block;
  margin-bottom: 6px;
  font-weight: 600;
}

/* Lists inside */
.pf-pros ul, .pf-cons ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* Pros items */
.pf-pros li::before {
  content: "✔";
  color: #2e7d32; /* green check */
  font-weight: bold;
  margin-right: 6px;
}

/* Cons items */
.pf-cons li::before {
  content: "✖";
  color: #d32f2f; /* red X */
  font-weight: bold;
  margin-right: 6px;
}

/* List text styling */
.pf-pros li, .pf-cons li {
  font-size: 0.95rem;
  color: #333;
  line-height: 1.5em;
}

/* ===== Align the full card stack (new order) ===== */

/* 0) Card & bottom buttons */
.pf-card{ display:flex; flex-direction:column; }
.pf-bottom{ margin-top:auto; display:flex; flex-direction:column; gap:10px; }

/* 1) Normalize the top three blocks */
:root{
  /* Tweak these until everything lines up perfectly */
  --catH:   28px;   /* product label line (pf-cat) */
  --imgH:  170px;   /* image display height */
  --blurbH: 56px;   /* blurb box (pf-sub) */
  --prosH: 108px;   /* pros block min-height */
  --consH:  92px;   /* cons block min-height */
}

/* product label */
.pf-cat{
  display:block;
  min-height: var(--catH);
  line-height:1.2;
  margin: 0 0 6px 0;
  text-align:center;
}

/* image */
.pf-img img{
  width:100%;
  height: var(--imgH);
  object-fit: cover;
  display:block;
  border-radius:6px;
  margin: 0 0 8px 0;
}

/* blurb */
.pf-sub{
  min-height: var(--blurbH);
  line-height:1.45;
  text-align:center;
  margin: 2px 0 4px 0;
}

/* 2) Pros / Cons styling + equalization */
.pf-pros, .pf-cons{
  text-align:center;
  margin: 12px 0;
}

.pf-pros{ min-height: var(--prosH); }
.pf-cons{ min-height: var(--consH); }

/* headings (blue/grey) */
.pf-pros strong, .pf-cons strong{
  color:#5a6d7a;
  font-size:1rem;
  font-weight:600;
  display:block;
  margin-bottom:6px;
}

/* lists */
.pf-pros ul, .pf-cons ul{ list-style:none; padding:0; margin:0; }
.pf-pros li, .pf-cons li{ margin:4px 0; line-height:1.45; }

/* icons: green check for pros, red X for cons */
.pf-pros li::before{ content:"✔"; color:#2e7d32; font-weight:700; margin-right:6px; }
.pf-cons li::before{ content:"✖"; color:#d32f2f; font-weight:700; margin-right:6px; }

/* remove stray editor margins */
.pf-card .elementor-widget-text-editor{ margin:0 !important; }

/* Mobile stack */
@media (max-width:767px){
  .pf-card{ min-height:unset; }
  .pf-pros, .pf-cons{ min-height:unset; }
}

/* === FINAL ALIGNMENT SNAP === */

/* Normalize typography so line heights are identical */
.pf-card .pf-cat,
.pf-card .pf-sub,
.pf-card .pf-pros li,
.pf-card .pf-cons li,
.pf-card .elementor-heading-title {
  font-size: 15px;
  line-height: 1.45;
}

/* Fixed image height */
.pf-img img { height: 172px; }

/* Use firm min-heights so rows start at the same y-position */
:root{
  /* tweak by ±2–4px if needed */
  --catH:   28px;    /* product label (pf-cat) */
  --blurbH: 64px;    /* blurb (pf-sub) */
  --prosH:  128px;   /* pros block */
  --consH:  112px;   /* cons block */
}

.pf-cat  { min-height: var(--catH);  display:block; text-align:center; margin:0 0 6px; }
.pf-sub  { min-height: var(--blurbH); text-align:center; margin:4px 0 6px; }

.pf-pros { min-height: var(--prosH); text-align:center; margin:12px 0; }
.pf-cons { min-height: var(--consH); text-align:center; margin:12px 0; }

/* Remove stray margins Elementor adds */
.pf-card .elementor-widget-text-editor { margin:0 !important; }
.pf-pros ul, .pf-cons ul { margin:0; padding:0; list-style:none; }

/* Icons + heading colors */
.pf-pros strong, .pf-cons strong { color:#5a6d7a; font-weight:600; margin-bottom:6px; display:block; }
.pf-pros li::before { content:"✔"; color:#2e7d32; font-weight:700; margin-right:6px; }
.pf-cons li::before { content:"✖"; color:#d32f2f; font-weight:700; margin-right:6px; }

/* Keep bottom buttons pinned */
.pf-card{ display:flex; flex-direction:column; }
.pf-bottom{ margin-top:auto; display:flex; flex-direction:column; gap:10px; }

/* Button color variations */
.pf-buy a, .pf-buy button {
  background-color: #D4AF37; /* Gold */
  color: #fff;
  border: none;
}
.pf-buy a:hover, .pf-buy button:hover {
  background-color: #b8942f;
}

.pf-guide a, .pf-guide button {
  background-color: #1E5FC1; /* Blue */
  color: #fff;
  border: none;
}
.pf-guide a:hover, .pf-guide button:hover {
  background-color: #174c9a;
}
/* ===== Fix Button Colors & Hover ===== */

/* Gold "View Product" button */
.pf-buy a,
.pf-buy button,
.pf-buy .elementor-button {
  background-color: #D4AF37 !important;  /* Pawvona gold */
  color: #fff !important;
  border: none !important;
  text-align: center;
  transition: all 0.2s ease-in-out;
}

.pf-buy a:hover,
.pf-buy button:hover,
.pf-buy .elementor-button:hover {
  background-color: #b8942f !important;  /* darker gold hover */
  color: #fff !important;
}

/* Blue "Read Guide" button */
.pf-guide a,
.pf-guide button,
.pf-guide .elementor-button {
  background-color: #1E5FC1 !important;  /* Pawvona blue */
  color: #fff !important;
  border: none !important;
  text-align: center;
  transition: all 0.2s ease-in-out;
}

.pf-guide a:hover,
.pf-guide button:hover,
.pf-guide .elementor-button:hover {
  background-color: #174c9a !important;  /* darker blue hover */
  color: #fff !important;
}

/* Two buttons side-by-side on desktop, stacked on mobile */
.pf-bottom {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Desktop breakpoint */
@media (min-width: 768px) {
  .pf-bottom {
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: 12px;
  }
  .pf-buy, .pf-guide {
    flex: 1;
  }
}

/* Default: stack on mobile */
.pf-bottom {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* Kill Elementor's default bottom margins on widgets inside the button row */
.pf-bottom .elementor-widget { margin: 0 !important; }

/* Desktop: side-by-side */
@media (min-width: 768px){
  .pf-bottom {
    flex-direction: row !important;
    align-items: stretch;
    justify-content: center;
    gap: 12px;
  }
  .pf-bottom .elementor-widget-button {
    flex: 1 1 0;
  }
}

/* Normalize the two-button row */
.pf-bottom {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.pf-bottom > .elementor-widget {           /* kill widget margins & flex evenly */
  margin: 0 !important;
  flex: 1 1 0;
  min-width: 0;
}

/* Make the actual buttons fill and align uniformly */
.pf-bottom .elementor-button,
.pf-bottom .elementor-button-link {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px;              /* consistent height */
  padding: 12px 14px !important; /* consistent padding */
  border-radius: 8px !important; /* consistent radius */
  white-space: nowrap;           /* avoid wrap on desktop */
}

/* If any icon was left on, hide it to prevent width shifts */
.pf-bottom .elementor-button .elementor-button-icon { display: none !important; }

/* Desktop: side-by-side */
@media (min-width: 768px){
  .pf-bottom { flex-direction: row; gap: 12px; }
}


/* Stack by default */
.pf-bottom { display:flex; flex-direction:column; gap:10px; }
.pf-bottom > .elementor-widget { margin:0!important; flex:1 1 0; min-width:0; }
.pf-bottom .elementor-button { width:100%; min-height:46px; }

/* Side-by-side only on wide desktops */
@media (min-width: 1024px){
  .pf-bottom { flex-direction:row; gap:12px; }
}

/* Default: stack the two buttons */
.pf-bottom {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}
.pf-bottom > .elementor-widget { margin: 0 !important; flex: 1 1 0; min-width: 0; }
.pf-bottom .elementor-button,
.pf-bottom .elementor-button-link {
  width: 100% !important;
  min-height: 46px;
  padding: 12px 14px !important;
  text-align: center;
  white-space: normal;              /* allow wrapping so text never clips */
}

/* Only go side-by-side on wide desktop */
@media (min-width: 1200px){
  .pf-bottom { flex-direction: row; gap: 12px; }
}
/* --- Pawvona Pros & Cons Styling --- */
.pf-pros, .pf-cons {
  text-align: center;
  font-family: "Poppins", sans-serif;
  font-size: 15px;
  line-height: 1.6;
  margin-top: 10px;
}

/* Pros Header */
.pf-pros strong {
  display: inline-block;
  background-color: #F6F8FB;
  color: #1E4DB7;
  border: 1px solid #1E4DB7;
  border-radius: 8px;
  padding: 4px 12px;
  margin-bottom: 6px;
  font-weight: 600;
}

/* Cons Header */
.pf-cons strong {
  display: inline-block;
  background-color: #FFF8F5;
  color: #E64C3C;
  border: 1px solid #E64C3C;
  border-radius: 8px;
  padding: 4px 12px;
  margin-top: 10px;
  margin-bottom: 6px;
  font-weight: 600;
}

/* Bullet Lists */
.pf-pros ul, .pf-cons ul {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
  display: inline-block;
}

/* Pros Items */
.pf-pros li::before {
  content: "✔ ";
  color: #00A86B;
  font-weight: bold;
  margin-right: 6px;
}

/* Cons Items */
.pf-cons li::before {
  content: "✖ ";
  color: #E64C3C;
  font-weight: bold;
  margin-right: 6px;
}

/* Align both sections evenly */
.pf-pros, .pf-cons {
  min-height: 100px;
}

/* Normalize text editor paragraph margins inside our cards */
.pf-card .elementor-widget-text-editor p { margin: 0 0 8px; }

/* Keep our lists tidy */
.pf-pros ul, .pf-cons ul { margin: 8px 0 0; padding: 0; }

/* Smooth hover lift for product cards */
.elementor-column:hover {
  transform: translateY(-8px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
  transition: all 0.3s ease;
}

/* Button hover color tweaks */
.elementor-button:hover {
  filter: brightness(1.1);
  transform: scale(1.02);
  transition: all 0.25s ease-in-out;
}
} /* End Pet Finder Results Page CSS *//* End custom CSS */