/*
Theme Name: PetUpon GeneratePress Child
Theme URI: https://petupon.com/
Description: Premium pet care editorial and independent buying guide portal built on GeneratePress.
Author: PetUpon
Template: generatepress
Version: 2.3.3
Text Domain: petupon
*/

:root {
  --pet-ink: #172c2a;
  --pet-muted: #60716e;
  --pet-green: #176b5b;
  --pet-green-dark: #0d4f43;
  --pet-mint: #dff3eb;
  --pet-mint-soft: #f2faf7;
  --pet-coral: #f3775b;
  --pet-sand: #fff6e8;
  --pet-line: #dce8e4;
  --pet-white: #fff;
  --pet-shadow: 0 18px 55px rgba(23, 69, 61, .10);
  --pet-radius: 22px;
  --pet-content: 1180px;
}

html { scroll-behavior: smooth; }
body {
  background: #f8fbfa;
  color: var(--pet-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 17px;
  line-height: 1.72;
  -webkit-font-smoothing: antialiased;
}
a { color: var(--pet-green); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--pet-coral); }
img { border-radius: 16px; }

/* Header */
.site-header { background: rgba(255,255,255,.96); border-bottom: 1px solid var(--pet-line); }
.inside-header { max-width: var(--pet-content); padding: 20px 24px 16px; }
.site-branding .main-title a {
  color: var(--pet-ink);
  font-size: 32px;
  font-weight: 850;
  letter-spacing: -1.4px;
  text-decoration: none;
}
.site-branding .main-title a::before { content: "\1F43E"; color: var(--pet-coral); font-size: 23px; margin-right: 9px; vertical-align: 3px; }
.site-description { color: var(--pet-muted); font-size: 13px; margin-top: 2px; }
.main-navigation { background: var(--pet-white); border-bottom: 1px solid var(--pet-line); }
.main-navigation .inside-navigation { max-width: var(--pet-content); padding: 0 24px; }
.main-navigation .main-nav ul li a { color: var(--pet-ink); font-size: 15px; font-weight: 700; padding: 0 18px; line-height: 54px; }
.main-navigation .main-nav ul li:hover > a,
.main-navigation .main-nav ul li.current-menu-item > a,
.main-navigation .main-nav ul li.current-menu-ancestor > a { color: var(--pet-green); background: var(--pet-mint-soft); }
.main-navigation .main-nav ul ul { border: 1px solid var(--pet-line); border-radius: 12px; box-shadow: var(--pet-shadow); overflow: hidden; }
.menu-toggle { color: var(--pet-ink) !important; font-weight: 750; }

/* Shared */
.pet-wrap { width: min(var(--pet-content), calc(100% - 40px)); margin-inline: auto; }
.pet-section { padding: 78px 0; }
.pet-section--soft { background: var(--pet-mint-soft); }
.pet-section--sand { background: var(--pet-sand); }
.pet-eyebrow { color: var(--pet-green); font-size: 13px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; margin: 0 0 12px; }
.pet-section-head { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 32px; }
.pet-section-head h2 { font-size: clamp(30px, 4vw, 46px); line-height: 1.08; letter-spacing: -1.5px; margin: 0; }
.pet-section-head p { color: var(--pet-muted); max-width: 580px; margin: 8px 0 0; }
.pet-text-link { font-size: 14px; font-weight: 800; white-space: nowrap; text-decoration: none; }
.pet-button { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 24px; border-radius: 999px; background: var(--pet-green); color: #fff; font-size: 15px; font-weight: 800; text-decoration: none; box-shadow: 0 10px 28px rgba(23,107,91,.2); transition: transform .2s, background .2s; }
.pet-button:hover { background: var(--pet-green-dark); color: #fff; transform: translateY(-2px); }
.pet-button--ghost { background: transparent; color: var(--pet-green); border: 1px solid var(--pet-green); box-shadow: none; }
.pet-button--ghost:hover { color: #fff; }
.pet-breadcrumbs { max-width: var(--pet-content); width: calc(100% - 48px); margin: 24px auto -20px; color: var(--pet-muted); font-size: 13px; }
.pet-breadcrumbs p { margin: 0; }
.pet-breadcrumbs a { color: var(--pet-green); font-weight: 700; text-decoration: none; }

/* Homepage hero */
.pet-hero { position: relative; overflow: hidden; padding: 66px 0 78px; background: linear-gradient(135deg, #f3fbf7 0%, #fff9ed 100%); }
.pet-hero::before { content: ""; position: absolute; width: 420px; height: 420px; right: -170px; top: -190px; border-radius: 50%; background: rgba(243,119,91,.12); }
.pet-hero-grid { display: grid; grid-template-columns: 1.03fr .97fr; gap: 60px; align-items: center; }
.pet-hero h1 { max-width: 690px; font-size: clamp(46px, 6vw, 76px); line-height: .98; letter-spacing: -3.8px; margin: 0 0 24px; }
.pet-hero h1 span { color: var(--pet-green); }
.pet-hero-copy { color: var(--pet-muted); font-size: 19px; max-width: 630px; margin-bottom: 30px; }
.pet-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.pet-trust { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 30px; color: var(--pet-muted); font-size: 13px; font-weight: 700; }
.pet-trust span::before { content: "\2713"; display: inline-grid; place-items: center; width: 20px; height: 20px; margin-right: 7px; border-radius: 50%; background: var(--pet-mint); color: var(--pet-green); }
.pet-hero-media { position: relative; }
.pet-hero-media img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 30px; box-shadow: var(--pet-shadow); }
.pet-hero-badge { position: absolute; left: -24px; bottom: 28px; max-width: 220px; padding: 15px 18px; border-radius: 16px; background: rgba(255,255,255,.96); box-shadow: var(--pet-shadow); font-size: 13px; font-weight: 750; }
.pet-hero-badge strong { display: block; color: var(--pet-green); font-size: 18px; }

/* Topic paths */
.pet-paths { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.pet-path { position: relative; min-height: 205px; padding: 28px; border: 1px solid var(--pet-line); border-radius: var(--pet-radius); background: #fff; color: var(--pet-ink); text-decoration: none; overflow: hidden; transition: transform .2s, box-shadow .2s, border-color .2s; }
.pet-path:hover { color: var(--pet-ink); transform: translateY(-5px); box-shadow: var(--pet-shadow); border-color: transparent; }
.pet-path-icon { display: grid; place-items: center; width: 54px; height: 54px; margin-bottom: 28px; border-radius: 16px; background: var(--pet-mint); font-size: 28px; }
.pet-path:nth-child(2) .pet-path-icon { background: #fff0ed; }
.pet-path:nth-child(3) .pet-path-icon { background: #eaf4ff; }
.pet-path h3 { font-size: 24px; margin: 0 0 6px; }
.pet-path p { color: var(--pet-muted); font-size: 14px; line-height: 1.55; margin: 0; }

/* Cards */
.pet-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }
.pet-card { min-width: 0; border: 1px solid var(--pet-line); border-radius: var(--pet-radius); background: #fff; overflow: hidden; transition: transform .2s, box-shadow .2s; }
.pet-card:hover { transform: translateY(-5px); box-shadow: var(--pet-shadow); }
.pet-card-image { display: block; aspect-ratio: 16/10; overflow: hidden; background: var(--pet-mint); }
.pet-card-image img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; transition: transform .35s; }
.pet-card:hover .pet-card-image img { transform: scale(1.035); }
.pet-card-body { padding: 24px; }
.pet-card-kicker { color: var(--pet-green); font-size: 12px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.pet-card h3 { font-size: 22px; line-height: 1.23; letter-spacing: -.45px; margin: 8px 0 10px; }
.pet-card h3 a { color: var(--pet-ink); text-decoration: none; }
.pet-card h3 a:hover { color: var(--pet-green); }
.pet-card p { color: var(--pet-muted); font-size: 14px; line-height: 1.6; margin: 0; }
.pet-card-meta { margin-top: 18px; color: #7d8d8a; font-size: 12px; font-weight: 650; }

/* Editorial / trust */
.pet-editorial { display: grid; grid-template-columns: .88fr 1.12fr; gap: 58px; align-items: center; padding: 48px; border-radius: 30px; background: var(--pet-ink); color: #fff; }
.pet-editorial h2 { color: #fff; font-size: clamp(32px, 4vw, 50px); line-height: 1.04; letter-spacing: -1.7px; margin: 0 0 18px; }
.pet-editorial p { color: #c9d8d5; }
.pet-checks { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.pet-checks li { position: relative; padding: 17px 18px 17px 52px; border: 1px solid rgba(255,255,255,.12); border-radius: 14px; background: rgba(255,255,255,.05); font-size: 14px; }
.pet-checks li::before { content: "\2713"; position: absolute; left: 17px; top: 16px; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--pet-coral); color: #fff; font-weight: 900; }

/* GeneratePress content views */
.site-content { max-width: var(--pet-content); padding: 46px 24px; }
.blog .site-main, .archive .site-main, .search .site-main { display: grid; grid-template-columns: repeat(2, 1fr); gap: 26px; }
.blog .page-header, .archive .page-header, .search .page-header { grid-column: 1 / -1; background: transparent; padding: 0 0 18px; }
.blog article, .archive article, .search article { margin: 0 !important; padding: 0 !important; border: 1px solid var(--pet-line); border-radius: var(--pet-radius); background: #fff; overflow: hidden; }
.blog article .inside-article, .archive article .inside-article, .search article .inside-article { padding: 0; }
.blog article .post-image, .archive article .post-image, .search article .post-image { margin: 0; }
.blog article .post-image img, .archive article .post-image img, .search article .post-image img { width: 100%; aspect-ratio: 16/10; object-fit: cover; border-radius: 0; }
.blog article .entry-header, .archive article .entry-header, .search article .entry-header,
.blog article .entry-summary, .archive article .entry-summary, .search article .entry-summary { padding-inline: 24px; }
.blog article .entry-header, .archive article .entry-header, .search article .entry-header { padding-top: 22px; }
.blog article .entry-title, .archive article .entry-title, .search article .entry-title { font-size: 23px; line-height: 1.25; }
.blog article .entry-summary, .archive article .entry-summary, .search article .entry-summary { padding-bottom: 24px; color: var(--pet-muted); font-size: 14px; }
.entry-title a { color: var(--pet-ink); text-decoration: none; }
.entry-title a:hover { color: var(--pet-green); }
.entry-meta { color: #7a8a87; font-size: 13px; }
.paging-navigation { grid-column: 1/-1; }

/* Article reading experience */
.single-post .site-content { max-width: 1140px; }
.single-post .content-area { width: 100%; }
.single-post .inside-article { max-width: 880px; margin-inline: auto; padding: clamp(28px,5vw,58px); border: 1px solid var(--pet-line); border-radius: 26px; background: #fff; }
.single-post .entry-title { font-size: clamp(38px,5vw,58px); line-height: 1.05; letter-spacing: -2px; margin-bottom: 14px; }
.single-post .featured-image img { width: 100%; border-radius: 20px; }
.single-post .entry-content { font-family: Georgia, "Times New Roman", serif; font-size: 19px; line-height: 1.82; }
.single-post .entry-content h2, .single-post .entry-content h3, .single-post .entry-content h4 { font-family: Inter, ui-sans-serif, system-ui, sans-serif; color: var(--pet-ink); line-height: 1.18; letter-spacing: -.7px; margin-top: 1.8em; }
.single-post .entry-content h2 { font-size: 34px; }
.single-post .entry-content h3 { font-size: 27px; }
.single-post .entry-content blockquote { margin: 30px 0; padding: 22px 26px; border-left: 5px solid var(--pet-coral); border-radius: 0 14px 14px 0; background: var(--pet-sand); }
.single-post .entry-content .pet-care-note { margin: 28px 0; padding: 20px 22px; border: 1px solid #f0c9b8; border-left: 5px solid var(--pet-coral); border-radius: 14px; background: var(--pet-sand); font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: 15px; line-height: 1.65; }
.pet-freshness-note { margin: 22px 0 30px; padding: 15px 18px; border: 1px solid #efd9aa; border-radius: 12px; background: #fffaf0; color: #725c2d; font-family: Inter, ui-sans-serif, system-ui, sans-serif; font-size: 13px; line-height: 1.55; }
.single-post .entry-content table { display: block; overflow-x: auto; font-family: Inter, sans-serif; font-size: 14px; border-collapse: collapse; }
.single-post .entry-content th { background: var(--pet-green); color: #fff; }
.single-post .entry-content th, .single-post .entry-content td { padding: 13px; border: 1px solid var(--pet-line); }
.pet-author-note { margin-top: 42px; padding: 24px; border-radius: 18px; background: var(--pet-mint-soft); border: 1px solid var(--pet-line); }
.pet-author-note strong { display: block; margin-bottom: 5px; font-size: 18px; }

/* Sidebar and footer */
.widget-area .widget { padding: 25px; border: 1px solid var(--pet-line); border-radius: 18px; background: #fff; }
.widget-title { color: var(--pet-ink); font-size: 18px; font-weight: 850; }
.site-footer { background: var(--pet-ink); color: #c5d4d1; }
.site-footer a { color: #fff; }
.site-info { background: var(--pet-ink); border-top: 1px solid rgba(255,255,255,.12); }
.inside-site-info { max-width: var(--pet-content); padding: 25px 24px; font-size: 13px; }

/* Accessibility / performance */
:focus-visible { outline: 3px solid var(--pet-coral); outline-offset: 3px; }
.screen-reader-text:focus { color: var(--pet-ink); }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; } }

@media (max-width: 900px) {
  .pet-hero-grid, .pet-editorial { grid-template-columns: 1fr; }
  .pet-hero-grid { gap: 42px; }
  .pet-hero-media { max-width: 680px; }
  .pet-paths, .pet-grid { grid-template-columns: repeat(2, 1fr); }
  .pet-path:last-child { grid-column: 1/-1; }
  .single-post .content-area { width: 100%; }
  .single-post .widget-area { display: none; }
}

@media (max-width: 640px) {
  body { font-size: 16px; }
  .inside-header { padding: 16px 20px; }
  .site-branding .main-title a { font-size: 27px; }
  .site-description { display: none; }
  .main-navigation .inside-navigation { padding: 0 12px; }
  .pet-wrap { width: min(100% - 28px, var(--pet-content)); }
  .pet-hero { padding: 44px 0 54px; }
  .pet-hero h1 { font-size: 47px; letter-spacing: -2.7px; }
  .pet-hero-copy { font-size: 17px; }
  .pet-hero-badge { left: 12px; bottom: 12px; }
  .pet-section { padding: 58px 0; }
  .pet-section-head { display: block; }
  .pet-section-head .pet-text-link { display: inline-block; margin-top: 16px; }
  .pet-paths, .pet-grid, .blog .site-main, .archive .site-main, .search .site-main { grid-template-columns: 1fr; }
  .pet-path:last-child { grid-column: auto; }
  .pet-editorial { padding: 30px 22px; gap: 30px; }
  .site-content { padding: 30px 14px; }
  .pet-breadcrumbs { width: calc(100% - 28px); margin-top: 18px; margin-bottom: -16px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .single-post .inside-article { padding: 24px 20px; border-radius: 18px; }
  .single-post .entry-title { font-size: 38px; letter-spacing: -1.3px; }
  .single-post .entry-content { font-size: 18px; }
  .single-post .entry-content h2 { font-size: 29px; }
}

/* ===== PetUpon Editorial Portal v2 ===== */
:root{--pet-paper:#fffdf9;--pet-cream:#f7efe5;--pet-rule:#eadfd3;--pet-text:#2b2320;--pet-sub:#5c4e49;--pet-orange:#e8763a;--pet-teal:#2f7a78;--pet-purple:#745398;--pet-gold:#e6b64c;--pet-serif:"Playfair Display",Merriweather,Georgia,serif;--pet-sans:"Plus Jakarta Sans",Inter,system-ui,sans-serif}
html[data-theme=dark]{--pet-paper:#191615;--pet-cream:#241f1d;--pet-rule:#423834;--pet-text:#f8eee8;--pet-sub:#cdbdb4;--pet-ink:#f8eee8;--pet-line:#423834;--pet-sand:#241f1d;--pet-mint-soft:#19302f}
html[data-theme=dark] body,html[data-theme=dark] .site{background:var(--pet-paper);color:var(--pet-text)}
html[data-theme=dark] .site-header,html[data-theme=dark] .inside-article,html[data-theme=dark] .pet-path,html[data-theme=dark] .pet-search-panel,html[data-theme=dark] .pet-guide-card{background:#201c1a;color:var(--pet-text)}
body{background:var(--pet-paper);color:var(--pet-text);font-family:var(--pet-sans)}
h1,h2,h3,.entry-title{font-family:var(--pet-serif);color:var(--pet-text)}
.pet-portal-bar{position:relative;z-index:50;border-block:1px solid var(--pet-rule);background:var(--pet-paper)}
.pet-portal-inner{width:min(100% - 40px,1200px);min-height:46px;margin:auto;display:flex;align-items:center;justify-content:space-between}
.pet-species-nav{display:flex;gap:26px;align-items:center}.pet-species-nav a{color:var(--pet-sub);font-size:13px;font-weight:750;text-decoration:none}.pet-species-nav a:hover{color:var(--pet-orange)}.pet-species-nav .pet-best-link{color:var(--pet-orange)}
.pet-portal-tools{display:flex;gap:8px}.pet-icon-button{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:var(--pet-text);padding:8px;cursor:pointer;font-weight:700}.pet-icon-button>span:first-child{font-size:20px}
.pet-search-modal[hidden]{display:none}.pet-search-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:start center;padding-top:min(16vh,130px)}.pet-search-backdrop{position:absolute;inset:0;background:rgba(20,16,14,.7);backdrop-filter:blur(5px)}.pet-search-panel{position:relative;width:min(680px,calc(100% - 30px));padding:42px;border-radius:20px;background:var(--pet-paper);box-shadow:0 30px 100px #0007}.pet-search-panel h2{font-size:36px;margin:5px 0 25px}.pet-search-close{position:absolute;right:18px;top:12px;border:0;background:none;color:var(--pet-text);font-size:32px;cursor:pointer}.pet-search-panel form,.pet-hub-header form{display:flex}.pet-search-panel input,.pet-hub-header input{flex:1;min-width:0;padding:16px 18px;border:1px solid var(--pet-rule);background:var(--pet-paper);color:var(--pet-text);font:inherit}.pet-search-panel form button,.pet-hub-header form button{border:0;padding:0 22px;background:var(--pet-orange);color:#fff;font-weight:800}.pet-search-quick{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px;font-size:13px}.pet-search-quick a{color:var(--pet-teal)}
.pet-featured{padding:20px 0 70px}.pet-edition-line{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--pet-rule);color:var(--pet-sub);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.pet-featured-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(320px,.7fr);gap:clamp(35px,6vw,80px);align-items:center;padding-top:38px}.pet-featured-media img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:2px}.pet-featured-copy h1{font-size:clamp(44px,5.4vw,74px);line-height:1.01;letter-spacing:-.035em;margin:10px 0 20px}.pet-featured-copy h1 a,.pet-editorial-card h3 a,.pet-buying-card h3 a,.pet-guide-card h2 a{color:inherit;text-decoration:none}.pet-dek{font-family:var(--pet-serif);font-size:20px;line-height:1.55;color:var(--pet-sub)}.pet-story-meta{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0;color:var(--pet-sub);font-size:12px}.pet-story-meta span+span:before{content:"•";margin-right:12px}.pet-arrow-link{color:var(--pet-orange);font-weight:850;text-decoration:none}.pet-arrow-link span{font-size:20px}
.pet-newsroom{border-top:1px solid var(--pet-rule)}.pet-section-head h2,.pet-best-intro h2{font-size:clamp(36px,4vw,52px);letter-spacing:-.025em}.pet-editorial-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.pet-editorial-card{border-top:3px solid var(--pet-text);padding-top:16px}.pet-editorial-card.is-lead{grid-row:span 2}.pet-editorial-image img{width:100%;aspect-ratio:16/10;object-fit:cover}.pet-editorial-card h3{font-size:24px;line-height:1.18;margin:8px 0}.pet-editorial-card.is-lead h3{font-size:34px}.pet-card-kicker{color:var(--pet-orange)!important;text-transform:uppercase;letter-spacing:.1em;font-size:11px!important;font-weight:850;margin:14px 0 5px!important}
.pet-best-hub{background:var(--pet-cream);border-block:1px solid var(--pet-rule)}.pet-best-intro{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:end;margin-bottom:34px}.pet-best-intro p{color:var(--pet-sub)}.pet-buying-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.pet-buying-card{background:var(--pet-paper);border:1px solid var(--pet-rule)}.pet-buying-card>a{display:block;position:relative}.pet-buying-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.pet-buying-card>div{padding:20px}.pet-buying-card h3{font-size:21px;line-height:1.2;margin:0 0 10px}.pet-buying-card p{font-size:13px;color:var(--pet-sub)}.pet-guide-badge{position:absolute;left:10px;top:10px;padding:6px 9px;background:var(--pet-teal);color:#fff;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.pet-path{border-color:var(--pet-rule);background:var(--pet-paper)}.pet-path>span:last-child{color:var(--pet-teal);font-size:13px;font-weight:800}.pet-advisory{display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center;padding:38px 44px;border-radius:6px;background:var(--pet-teal);color:#fff}.pet-advisory h2{color:#fff;font-size:36px;margin:4px 0 8px}.pet-advisory p{margin:0;max-width:720px}.pet-advisory .pet-eyebrow{color:#bce5df}.pet-advisory-mark{display:grid;place-items:center;width:60px;height:60px;border:2px solid #fff;border-radius:50%;font-size:28px}.pet-button--light{background:#fff;color:var(--pet-teal)}
.pet-hub-header{padding:70px 0;background:var(--pet-cream);text-align:center;border-bottom:1px solid var(--pet-rule)}.pet-hub-header h1{font-size:clamp(48px,7vw,82px);letter-spacing:-.04em;margin:8px 0}.pet-hub-header>div>p:not(.pet-eyebrow){max-width:680px;margin:0 auto 28px;color:var(--pet-sub);font:20px/1.5 var(--pet-serif)}.pet-hub-header form{max-width:650px;margin:auto}.pet-guide-filter{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}.pet-guide-filter button{border:1px solid var(--pet-rule);border-radius:99px;padding:10px 18px;background:var(--pet-paper);color:var(--pet-sub);font-weight:750;cursor:pointer}.pet-guide-filter button.is-active{background:var(--pet-text);color:var(--pet-paper);border-color:var(--pet-text)}.pet-guide-library{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.pet-guide-card{border:1px solid var(--pet-rule);background:var(--pet-paper)}.pet-guide-image{position:relative;display:block}.pet-guide-image img{width:100%;aspect-ratio:16/10;object-fit:cover}.pet-guide-card>div{padding:22px}.pet-guide-card h2{font-size:25px;line-height:1.17;margin:5px 0 12px}.pet-guide-card p{color:var(--pet-sub);font-size:14px}
.pet-reading-progress{position:fixed;z-index:1000;left:0;right:0;top:0;height:4px}.pet-reading-progress span{display:block;width:0;height:100%;background:var(--pet-orange)}.pet-article-labels,.pet-affiliate-disclosure,.pet-auto-toc{max-width:880px;margin:20px auto}.pet-article-labels{display:flex;gap:13px;align-items:center;color:var(--pet-sub);font-size:12px}.pet-content-badge{padding:7px 10px;background:var(--pet-cream);color:var(--pet-orange);text-transform:uppercase;letter-spacing:.07em;font-weight:850}.pet-content-badge.is-care{color:var(--pet-teal)}.pet-affiliate-disclosure{display:flex;align-items:center;gap:15px;padding:16px 20px;border:1px solid #efc8b3;background:#fff5ee;font-size:12px;color:#65473a}.pet-affiliate-disclosure strong{white-space:nowrap;color:var(--pet-orange)}.pet-affiliate-disclosure a{white-space:nowrap;color:inherit;font-weight:800}.pet-auto-toc{padding:18px 22px;border:1px solid var(--pet-rule);background:var(--pet-cream)}.pet-auto-toc>button{display:flex;width:100%;justify-content:space-between;border:0;background:none;color:var(--pet-text);font-weight:850;cursor:pointer}.pet-auto-toc ol{columns:2;margin:16px 0 0;padding-left:20px}.pet-auto-toc li{margin:7px 0}.pet-auto-toc a{color:var(--pet-teal);font-size:13px}.pet-auto-toc.is-collapsed ol{display:none}.pet-methodology{margin-top:45px;padding:34px;border:1px solid var(--pet-rule);background:var(--pet-cream)}.pet-methodology h2{font-size:32px}.pet-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:25px;background:var(--pet-rule)}.pet-method-grid div{display:flex;flex-direction:column;padding:18px;background:var(--pet-paper)}.pet-method-grid strong{color:var(--pet-orange);font-size:21px}.pet-method-grid span{font-size:12px}
.petupon-buying-guide .entry-content .pet-product-box,.petupon-buying-guide .entry-content .product-box{padding:28px;border:1px solid var(--pet-rule);border-top:5px solid var(--pet-orange);background:var(--pet-paper);box-shadow:0 12px 35px rgba(60,40,20,.08)}.petupon-buying-guide .entry-content .pros-cons,.petupon-buying-guide .entry-content .pet-pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:15px;font-family:var(--pet-sans);font-size:14px}.petupon-buying-guide .entry-content .pros{padding:18px;background:#edf8f4;color:#215e4d}.petupon-buying-guide .entry-content .cons{padding:18px;background:#fff0ed;color:#8c352c}
@media(max-width:900px){.pet-featured-grid,.pet-best-intro{grid-template-columns:1fr}.pet-editorial-grid{grid-template-columns:repeat(2,1fr)}.pet-editorial-card.is-lead{grid-column:1/-1;grid-row:auto}.pet-buying-grid,.pet-guide-library{grid-template-columns:repeat(2,1fr)}.pet-advisory{grid-template-columns:auto 1fr}.pet-advisory .pet-button{grid-column:2}.pet-method-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.pet-species-nav{gap:13px;overflow:auto}.pet-species-nav a{font-size:11px;white-space:nowrap}.pet-tool-label{display:none}.pet-edition-line span:last-child{display:none}.pet-featured-grid{padding-top:24px}.pet-featured-copy h1{font-size:43px}.pet-featured{padding-bottom:44px}.pet-editorial-grid,.pet-buying-grid,.pet-guide-library{grid-template-columns:1fr}.pet-best-intro{gap:12px}.pet-advisory{grid-template-columns:1fr;padding:28px}.pet-advisory .pet-button{grid-column:auto}.pet-auto-toc ol{columns:1}.pet-affiliate-disclosure{margin-inline:14px;align-items:flex-start;flex-direction:column}.pet-article-labels{margin-inline:14px;flex-wrap:wrap}.pet-method-grid,.petupon-buying-guide .entry-content .pros-cons,.petupon-buying-guide .entry-content .pet-pros-cons{grid-template-columns:1fr}.pet-search-panel{padding:30px 22px}}
.pet-table-wrap{max-width:100%;margin:28px 0;overflow-x:auto;border:1px solid var(--pet-rule);box-shadow:0 8px 25px rgba(50,30,15,.06)}.pet-table-wrap:focus{outline:3px solid var(--pet-orange);outline-offset:2px}.petupon-buying-guide .entry-content table.pet-comparison-table{display:table;width:100%;margin:0;border:0}.petupon-buying-guide .entry-content .pet-comparison-table th{background:var(--pet-text);color:var(--pet-paper);text-align:left;white-space:nowrap}.petupon-buying-guide .entry-content .pet-comparison-table tr:nth-child(even) td{background:var(--pet-cream)}.pet-affiliate-cta{display:inline-flex;align-items:center;justify-content:center;margin:8px 4px;padding:12px 18px;border-radius:4px;background:var(--pet-orange);color:#fff!important;font-family:var(--pet-sans);font-size:13px;font-weight:850;text-decoration:none!important}.pet-affiliate-cta:after{content:" →";margin-left:6px}.pet-affiliate-cta:hover{background:#c85d28;color:#fff!important}
.pet-author-note{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start}.pet-author-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--pet-teal);color:#fff;font:800 16px var(--pet-sans)}.pet-author-note .pet-eyebrow{margin:0 0 3px}.pet-author-note span{display:block}.pet-author-note a{display:inline-block;margin-top:8px;color:var(--pet-teal);font:800 12px var(--pet-sans);text-decoration:none}.pet-related{max-width:880px;margin:48px auto 20px;padding-top:30px;border-top:1px solid var(--pet-rule)}.pet-related>h2{font-size:34px;margin:3px 0 22px}.pet-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.pet-related-image img{width:100%;aspect-ratio:16/10;object-fit:cover}.pet-related h3{font-size:18px;line-height:1.2;margin:10px 0 7px}.pet-related h3 a{color:var(--pet-text);text-decoration:none}.pet-related article>span{color:var(--pet-sub);font-size:11px}.pet-faq-accordion{margin:20px 0 35px;border-top:1px solid var(--pet-rule);font-family:var(--pet-sans)}.pet-faq-accordion details{border-bottom:1px solid var(--pet-rule)}.pet-faq-accordion summary{position:relative;padding:18px 40px 18px 0;color:var(--pet-text);font-weight:800;cursor:pointer;list-style:none}.pet-faq-accordion summary::-webkit-details-marker{display:none}.pet-faq-accordion summary:after{content:"+";position:absolute;right:8px;top:14px;color:var(--pet-orange);font-size:25px}.pet-faq-accordion details[open] summary:after{content:"–"}.pet-faq-accordion details p{margin:0;padding:0 35px 20px 0;color:var(--pet-sub);font-family:var(--pet-sans);font-size:15px;line-height:1.7}
@media(max-width:640px){.pet-related-grid{grid-template-columns:1fr}.pet-author-note{grid-template-columns:1fr}.pet-related{margin-inline:14px}}
.pet-category-hero{grid-column:1/-1;margin:0 0 34px;padding:clamp(34px,6vw,68px);border:1px solid var(--pet-rule);background:var(--pet-cream)}.pet-category-hero h1{max-width:850px;margin:5px 0 15px;font-size:clamp(44px,6vw,74px);line-height:1;letter-spacing:-.035em}.pet-category-dek{max-width:760px;color:var(--pet-sub);font:19px/1.6 var(--pet-serif)}.pet-category-dek p{margin:0}.pet-category-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.pet-category-chips a{display:flex;gap:9px;align-items:center;padding:10px 15px;border:1px solid var(--pet-rule);border-radius:99px;background:var(--pet-paper);color:var(--pet-text);font-size:12px;font-weight:800;text-decoration:none}.pet-category-chips a:hover{border-color:var(--pet-orange);color:var(--pet-orange)}.pet-category-chips span{display:grid;place-items:center;min-width:20px;height:20px;border-radius:50%;background:var(--pet-cream);font-size:10px}.archive.category .page-header{display:none}@media(max-width:640px){.pet-category-hero{padding:30px 22px}.pet-category-hero h1{font-size:43px}.pet-category-dek{font-size:17px}}
.pet-commerce-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.8fr);gap:28px;align-items:center;margin:32px 0;padding:28px;border:1px solid #e9cbb9;border-left:6px solid var(--pet-orange);background:#fff7f0;font-family:var(--pet-sans);box-shadow:0 10px 30px rgba(88,51,25,.08)}html[data-theme=dark] .pet-commerce-panel{background:#2a211c;border-color:#704830}.pet-commerce-panel h2{margin:3px 0 9px!important;font-size:28px!important}.pet-commerce-panel p{margin:0;font-size:13px;line-height:1.65;color:var(--pet-sub)}.pet-commerce-actions{display:flex;flex-direction:column;align-items:stretch}.pet-commerce-actions .pet-affiliate-cta{margin:4px 0;text-align:center}@media(max-width:640px){.pet-commerce-panel{grid-template-columns:1fr;padding:22px}.pet-commerce-panel h2{font-size:25px!important}}
.pet-demo-warning{display:flex;gap:18px;align-items:flex-start;margin:24px auto;padding:18px 22px;max-width:1000px;border:2px solid #b54b3c;background:#fff0ed;color:#762b23;font-family:var(--pet-sans)}.pet-demo-warning strong{white-space:nowrap;letter-spacing:.06em}.pet-demo-warning span{font-size:13px;line-height:1.6}.pet-expert-profile,.pet-expert-replace{max-width:1000px;margin:28px auto;padding:clamp(26px,5vw,54px);border:1px solid var(--pet-rule);background:var(--pet-paper)}.pet-expert-hero{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;padding-bottom:34px;border-bottom:1px solid var(--pet-rule)}.pet-expert-avatar{display:grid;place-items:center;width:120px;height:120px;border-radius:50%;background:var(--pet-teal);color:#fff;font:700 35px var(--pet-serif)}.pet-expert-hero h1{margin:4px 0;font-size:clamp(40px,6vw,66px);line-height:1}.pet-expert-role{color:var(--pet-sub);font-weight:650}.pet-expert-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.pet-expert-badges span{padding:7px 10px;border-radius:99px;background:var(--pet-cream);color:var(--pet-teal);font-size:10px;font-weight:850;letter-spacing:.05em}.pet-expert-badges span:first-child{background:#fff0ed;color:#a13e32}.pet-expert-columns{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.7fr);gap:45px;margin-top:38px}.pet-expert-columns h2{font-size:27px;margin-top:30px}.pet-expert-sidebar{padding:24px;background:var(--pet-cream);align-self:start}.pet-expert-sidebar h2{font-size:20px;margin-top:15px}.pet-expert-sidebar dl{font-size:13px}.pet-expert-sidebar dt{margin-top:13px;color:var(--pet-sub);font-weight:800}.pet-expert-sidebar dd{margin:2px 0 0}.pet-expert-replace h2{margin-top:0}@media(max-width:700px){.pet-demo-warning{flex-direction:column;margin-inline:14px}.pet-expert-hero,.pet-expert-columns{grid-template-columns:1fr}.pet-expert-avatar{width:90px;height:90px}.pet-expert-profile,.pet-expert-replace{margin-inline:14px}}

/* ===== Editorial polish v2.2: calmer hierarchy, one navigation, consistent rhythm ===== */
body{font-size:16px;line-height:1.68}
img{border-radius:0}
.site-header{background:var(--pet-paper);border-bottom:0}
.inside-header{max-width:1280px;min-height:68px;padding:12px 24px}
.site-branding .main-title a{font-size:30px;color:var(--pet-text)}
.site-description{display:none}
.main-navigation{display:none}
.pet-portal-bar{position:sticky;top:0;box-shadow:0 5px 18px rgba(43,35,32,.045)}
.pet-portal-inner{width:min(100% - 48px,1280px);min-height:50px}
.pet-species-nav{gap:30px}
.pet-species-nav a{font-size:13px;color:var(--pet-text)}
.pet-icon-button{min-height:42px;padding-inline:10px}
.pet-wrap{width:min(1280px,calc(100% - 48px))}
.pet-section{padding:56px 0}
.pet-breadcrumbs{max-width:1120px;margin-top:22px;margin-bottom:8px}

.pet-featured{padding:0 0 50px}
.pet-edition-line{padding:13px 0}
.pet-featured-grid{grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr);gap:40px;align-items:center;margin-inline:clamp(18px,2.4vw,32px);padding-top:28px}
.pet-featured-copy{order:1;display:flex;flex-direction:column;justify-content:center;padding:12px 0}
.pet-featured-media{order:2;display:block;min-height:0;aspect-ratio:16/9;overflow:hidden;border-radius:8px;background:var(--pet-cream)}
.pet-featured-media img{display:block;width:100%;height:100%;aspect-ratio:16/9;object-fit:cover}
.pet-featured-copy h1{max-width:660px;margin:8px 0 16px;font-size:clamp(40px,4.15vw,56px);line-height:1.03;letter-spacing:-.03em;text-wrap:balance}
.pet-dek{margin:0;font-size:18px;line-height:1.55}
.pet-story-meta{margin:18px 0 14px}
.pet-editorial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.pet-editorial-card,.pet-editorial-card.is-lead{display:flex;flex-direction:column;grid-column:auto;grid-row:auto;padding-top:12px;border-top:3px solid var(--pet-text)}
.pet-editorial-image img{aspect-ratio:16/9}
.pet-editorial-card h3,.pet-editorial-card.is-lead h3{font-size:25px;line-height:1.18}
.pet-editorial-card>div>p:not(.pet-card-kicker){color:var(--pet-sub);font-size:14px;line-height:1.6}
.pet-best-intro{gap:28px}
.pet-buying-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.pet-buying-card h3{font-size:24px}
.pet-path{min-height:190px;padding:24px;border-radius:8px}
.pet-path-icon{margin-bottom:20px;border-radius:50%}
.pet-advisory{padding:32px 36px}

.pet-hub-header{margin-top:0;padding:48px 0 52px}
.pet-hub-header h1{font-size:clamp(44px,6vw,68px);line-height:1.02}
.pet-hub-header>div>p:not(.pet-eyebrow){font-size:18px;margin-bottom:24px}
.pet-guide-filter{position:sticky;z-index:20;top:53px;padding:12px 0;margin:-12px 0 26px;background:var(--pet-paper)}
.pet-guide-library{gap:22px}
.pet-guide-card{display:flex;flex-direction:column;border-radius:4px;overflow:hidden;box-shadow:0 8px 26px rgba(43,35,32,.045)}
.pet-guide-card>div{padding:18px 20px 20px}
.pet-guide-card h2{font-size:22px}
.pet-guide-card p{line-height:1.55}
.pet-guide-more-wrap{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:38px}
.pet-guide-more{min-height:46px;padding:0 22px;border:1px solid var(--pet-text);background:var(--pet-text);color:var(--pet-paper);font:800 13px var(--pet-sans);cursor:pointer}
.pet-guide-more:hover{background:var(--pet-orange);border-color:var(--pet-orange)}
.pet-guide-count{color:var(--pet-sub);font-size:12px}

.single-post .site-content{max-width:1280px;padding-top:24px}
.single-post .inside-article{max-width:1120px;padding:clamp(30px,4vw,48px) clamp(24px,5vw,64px);border-radius:8px;border-color:var(--pet-rule);box-shadow:0 14px 45px rgba(43,35,32,.055)}
.single-post .inside-article{display:flex;flex-direction:column}
.single-post .entry-header{order:1}.single-post .pet-article-labels{order:2}.single-post .pet-affiliate-disclosure{order:3}.single-post .featured-image,.single-post .post-image{order:4}.single-post .pet-auto-toc{order:5}.single-post .entry-content{order:6}.single-post .entry-footer{order:7}.single-post .pet-methodology{order:8}.single-post .pet-author-note{order:9}.single-post .pet-related{order:10}
.single-post .inside-article>.post-navigation,.single-post .inside-article>.entry-meta,.single-post .entry-header .entry-meta{display:none}
.single-post .featured-image,.single-post .post-image{margin:20px 0 6px}
.single-post .entry-header{max-width:940px}
.single-post .entry-title{max-width:940px;font-size:clamp(40px,4.5vw,60px);line-height:1.05;letter-spacing:-.035em;text-wrap:balance}
.single-post .entry-content{width:min(100%,820px);margin-inline:auto;font-size:18px;line-height:1.78}
.pet-article-labels,.pet-affiliate-disclosure,.pet-auto-toc{max-width:none;margin:18px 0}
.pet-article-labels{margin-top:14px;padding-bottom:17px;border-bottom:1px solid var(--pet-rule)}
.pet-affiliate-disclosure{display:grid;grid-template-columns:auto 1fr auto;padding:14px 16px}
.pet-auto-toc{padding:16px 18px;border-radius:4px}
.pet-auto-toc ol{margin-top:12px}
.pet-commerce-panel{border-radius:4px;box-shadow:none}
.pet-author-note{border-radius:4px}

.page .content-area{width:100%}
.page .site-main{margin:0}
.page-id-3409 .site-content{max-width:1120px;padding-top:28px}
.page-id-3409 .inside-article{padding:0;background:transparent}
.page-id-3409 .entry-header{max-width:1000px;margin-inline:auto}
.page-id-3409 .entry-title{margin-bottom:18px;font-size:clamp(38px,5vw,58px)}
.pet-expert-profile,.pet-expert-replace{border-radius:6px;box-shadow:0 12px 38px rgba(43,35,32,.05)}

/* Three-column editorial footer */
.footer-widgets{display:none}
.pet-editorial-footer{padding:56px 0 48px;background:#211d1b;color:#d8cbc4;border-bottom:1px solid rgba(255,255,255,.12)}
.pet-footer-grid{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:clamp(40px,7vw,90px)}
.pet-editorial-footer h2{margin:5px 0 18px;color:#fff;font:800 13px var(--pet-sans);letter-spacing:.1em;text-transform:uppercase}
.pet-editorial-footer ul{margin:0;padding:0;list-style:none}
.pet-editorial-footer li+li{margin-top:10px}
.pet-editorial-footer a{color:#f6eee9;text-decoration:none}
.pet-editorial-footer a:hover{color:#f29a69}
.pet-footer-logo{display:inline-block;color:#fff!important;font:800 31px var(--pet-sans);letter-spacing:-1.3px}
.pet-footer-logo:before{content:"\1F43E";margin-right:9px;color:var(--pet-orange);font-size:21px;vertical-align:3px}
.pet-footer-brand p{max-width:410px;margin:17px 0;color:#c8b8b0;font-size:14px;line-height:1.7}
.pet-footer-contact{font-size:13px;font-weight:800}
.pet-editorial-footer nav a{font-size:14px;color:#d8cbc4}
.site-info{background:#211d1b}
.inside-site-info{padding-block:20px;color:#aa9c95}

/* Modern compact cookie notice instead of the legacy full-width strip. */
#cookie-law-info-bar{left:50%!important;right:auto!important;bottom:18px!important;top:auto!important;width:min(680px,calc(100% - 28px))!important;padding:14px 16px!important;transform:translateX(-50%);border:1px solid var(--pet-rule);border-radius:10px;background:rgba(255,253,249,.98)!important;color:var(--pet-text)!important;box-shadow:0 18px 55px rgba(30,20,15,.2);font:12px/1.55 var(--pet-sans)!important;text-align:left!important}
#cookie-law-info-bar .cli-bar-message{display:block}
#cookie-law-info-bar .cli_action_button{margin:6px 4px 0!important;padding:7px 12px!important;border-radius:5px!important;background:var(--pet-text)!important;color:#fff!important;font-weight:800}
#cookie-law-info-bar .wt-cli-reject-btn{background:transparent!important;color:var(--pet-text)!important;border:1px solid var(--pet-rule)}
#cookie-law-info-bar .cli-plugin-main-link{margin:6px 4px 0!important;color:var(--pet-teal)!important;font-weight:800}

@media(max-width:900px){
  .pet-featured-grid{grid-template-columns:1fr}.pet-featured-copy,.pet-featured-media{order:initial}.pet-featured-media{min-height:0;aspect-ratio:16/9}.pet-featured-media img{aspect-ratio:16/9}
  .pet-editorial-grid,.pet-buying-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pet-species-nav{gap:18px}.pet-species-nav a:nth-child(4){display:none}
  .pet-footer-grid{grid-template-columns:1.2fr 1fr}.pet-footer-brand{grid-column:1/-1}
}
@media(min-width:901px){.pet-featured-copy h1{font-size:clamp(40px,3.7vw,54px)}}
@media(max-width:640px){
  .inside-header{min-height:60px;padding:10px 16px}.site-branding .main-title a{font-size:27px}
  .pet-portal-inner{width:calc(100% - 20px);min-height:48px}.pet-portal-bar{top:0}.pet-species-nav{gap:18px}.pet-species-nav a:nth-child(3),.pet-species-nav a:nth-child(4),.pet-species-nav a:last-child{display:none}
  .pet-featured{padding-bottom:44px}.pet-featured-grid{gap:0;margin-inline:0}.pet-featured-copy{padding:26px 22px}.pet-featured-copy h1{font-size:38px}.pet-dek{font-size:17px}
  .pet-editorial-grid,.pet-buying-grid{grid-template-columns:1fr}
  .pet-section{padding:50px 0}.pet-hub-header{padding:38px 0}.pet-hub-header h1{font-size:44px}.pet-hub-header form{display:grid;grid-template-columns:1fr}.pet-hub-header form button{min-height:46px}
  .pet-guide-filter{top:49px;overflow-x:auto;flex-wrap:nowrap}.pet-guide-filter button{white-space:nowrap}.pet-guide-more-wrap{flex-direction:column;gap:10px}
  .single-post .site-content{padding-top:16px}.single-post .inside-article{padding:26px 20px;border-radius:4px}.single-post .entry-title{font-size:36px}.single-post .entry-content{font-size:17px}
  .pet-affiliate-disclosure{grid-template-columns:1fr;gap:6px;margin-inline:0}.pet-article-labels{margin-inline:0}.pet-auto-toc{margin-inline:0}
  .pet-advisory{padding:26px 22px}.pet-advisory h2{font-size:30px}
  .pet-editorial-footer{padding:42px 0 36px}.pet-footer-grid{grid-template-columns:1fr;gap:32px}.pet-footer-brand{grid-column:auto}
}
