/* Pet Policy Scope — canonical utility-page stylesheet reconstructed from accepted V3 utility chain. */

/* ---- systemic-v3.css ---- */

:root{
  --ink:#172033;--muted:#647084;--brand:#ef6254;--brand-dark:#c84b40;
  --brand-soft:#fff2ef;--surface:#ffffff;--surface-alt:#fbf8f6;--line:#e9e4e1;
  --footer:#172232;--footer-muted:#b8c1cc;--shadow:0 12px 32px rgba(23,32,51,.07);
  --radius:22px;--page:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0!important;color:var(--ink)!important;background:#fff!important;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;line-height:1.62!important}
a{color:inherit}
.wrap{width:100%!important;max-width:var(--page)!important;margin-left:auto!important;margin-right:auto!important;padding-left:28px!important;padding-right:28px!important}

/* Header: one site-wide structure, no random per-page navigation */
header{position:sticky!important;top:0!important;z-index:60!important;background:rgba(255,255,255,.97)!important;backdrop-filter:blur(12px)!important;border-bottom:1px solid var(--line)!important;box-shadow:0 4px 18px rgba(23,32,51,.035)!important}
header .nav{height:72px!important;display:flex!important;align-items:center!important;gap:18px!important}
header .brand{font-size:25px!important;line-height:1!important;font-weight:800!important;letter-spacing:-.035em!important;color:var(--brand)!important;text-decoration:none!important;margin-right:auto!important;white-space:nowrap!important}
header .brand small{display:block!important;margin-top:3px!important;font-size:10px!important;line-height:1.1!important;letter-spacing:.10em!important;text-transform:uppercase!important;color:#667085!important;text-align:left!important;font-weight:750!important}
header .navlinks,header .navlink{display:none!important}

.btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;border-radius:999px!important;text-decoration:none!important;font-weight:750!important;line-height:1.1!important;border:1px solid transparent!important;transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important}
.btn:hover{transform:translateY(-1px)!important}
.btn.primary{background:linear-gradient(135deg,var(--brand),#ff8174)!important;color:#fff!important;box-shadow:0 8px 20px rgba(239,98,84,.20)!important}
.btn.ghost{background:#fff!important;color:#8e3b34!important;border-color:#efbbb5!important;box-shadow:none!important}
.btn.small{padding:11px 18px!important;font-size:14px!important}

/* Shared content width and spacing */
.hero.wrap,.hero .wrap{max-width:var(--page)!important}
.hero{padding-top:48px!important;padding-bottom:42px!important;column-gap:38px!important;row-gap:18px!important}
.hero h1{font-size:clamp(42px,4vw,56px)!important;line-height:1.02!important;letter-spacing:-.045em!important;margin:12px 0 16px!important}
.hero .lede{font-size:18px!important;line-height:1.58!important;color:#495467!important;max-width:720px!important}
.hero-art{border-radius:28px!important;box-shadow:var(--shadow)!important}
.hero-actions{margin-top:0!important;gap:10px!important}
.hero-actions .btn{padding:13px 20px!important}
.trust-row{border-radius:16px!important;box-shadow:none!important}

.section{padding:62px 0!important;background:#fff!important}
.section.section--tint{background:var(--surface-alt)!important}
.section>.wrap{max-width:var(--page)!important;width:100%!important}
.section-head{width:100%!important;max-width:none!important;margin:0 0 26px!important;padding:0!important}
.section-head .eyebrow,.eyebrow{font-size:11px!important;line-height:1.35!important;letter-spacing:.11em!important;text-transform:uppercase!important;font-weight:800!important;color:var(--brand)!important}
.section-head h2,.section>.wrap>.section-head h2{font-size:34px!important;line-height:1.16!important;letter-spacing:-.028em!important;font-weight:760!important;margin:0 0 10px!important;color:var(--ink)!important}
.section-head .section-intro,.section-intro{max-width:900px!important;font-size:16px!important;line-height:1.62!important;color:var(--muted)!important;margin-top:8px!important}
.content,.reading{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.reading>p,.content>p{max-width:960px!important}

/* Direct answer: calmer editorial typography */
.answer-hero{width:100%!important;max-width:none!important;padding:25px 28px!important;border-radius:18px!important;background:#fff7f5!important;border:1px solid #f1d9d4!important;border-left:4px solid var(--brand)!important;box-shadow:none!important}
.answerline,.answer-hero .answerline{font-size:21px!important;line-height:1.55!important;font-weight:590!important;letter-spacing:-.008em!important;color:#253044!important;margin:0!important}
.answer-hero p:not(.answerline){font-size:15px!important;line-height:1.62!important;color:var(--muted)!important}

/* Cards and grids */
.card,.panel,.time,.feature-copy-card,.answer-col,.source,.guide{border:1px solid var(--line)!important;border-radius:18px!important;box-shadow:0 6px 18px rgba(23,32,51,.035)!important;background:#fff!important}
.card,.panel,.time,.feature-copy-card{padding:22px!important}
.grid2,.grid3,.grid4,.guides,.wide-cards,.timeline{gap:16px!important}
.timeline{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}
.timeline.timeline-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.timeline.timeline-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.timeline.timeline-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.time{min-width:0!important}
.time .n{margin-bottom:12px!important}

/* Image + copy modules: cards always become a full-width row below */
.feature-wide.feature-wide-unified{display:grid!important;grid-template-columns:minmax(300px,.86fr) minmax(0,1.14fr)!important;gap:22px!important;align-items:start!important}
.feature-wide.feature-wide-unified>.photo{grid-column:1!important;grid-row:1!important;height:100%!important;min-height:320px!important;max-height:440px!important}
.feature-wide.feature-wide-unified>.feature-media-copy{grid-column:2!important;grid-row:1!important;display:block!important}
.feature-wide.feature-wide-unified>.feature-media-copy>.feature-copy-card{height:auto!important}
.feature-wide.feature-wide-unified>.wide-cards{grid-column:1/-1!important;grid-row:2!important;display:grid!important;margin-top:0!important}
.wide-cards.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.wide-cards.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.wide-cards.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}

/* Never put a data table beside a photo */
.photo-pair.has-table,.split.has-table,.editorial-pair.has-table{display:grid!important;grid-template-columns:1fr!important;gap:22px!important}
.photo-pair.has-table>.photo,.split.has-table>.photo,.editorial-pair.has-table>.photo{width:100%!important;max-width:760px!important;min-height:0!important}
.photo-pair.has-table>.photo img,.split.has-table>.photo img,.editorial-pair.has-table>.photo img{width:100%!important;height:auto!important;max-height:430px!important;object-fit:cover!important}
.photo-pair.has-table>.reading,.split.has-table>.reading,.editorial-pair.has-table>.reading{width:100%!important;max-width:none!important}

/* Tables: desktop table, cards before any horizontal-scroll state appears */
.scorecard{width:100%!important;max-width:none!important;overflow:visible!important;border:1px solid var(--line)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 6px 18px rgba(23,32,51,.035)!important}
.scorecard table{width:100%!important;min-width:0!important;border-collapse:collapse!important;table-layout:auto!important}
.scorecard th,.scorecard td{padding:14px 16px!important;overflow-wrap:anywhere!important}
.scorecard th{background:#fff4f1!important;color:#394457!important;font-size:11px!important;letter-spacing:.055em!important}
.scorecard td{font-size:14px!important;line-height:1.52!important;color:#4f5a6c!important}

/* Partner CTA */
.partner{border-radius:24px!important;padding:30px!important;background:linear-gradient(135deg,#ffece8,#fff8f6)!important;border:1px solid #f4d6d0!important;box-shadow:none!important}
.partner h2{font-size:30px!important;line-height:1.18!important;letter-spacing:-.02em!important}

/* Fixed desktop CTA and clear footer separation */
.sticky{position:sticky!important;bottom:0!important;z-index:50!important;background:rgba(255,255,255,.98)!important;border-top:1px solid #e5e0dd!important;box-shadow:0 -12px 30px rgba(23,32,51,.11)!important;backdrop-filter:blur(10px)!important}
.sticky .inner{min-height:64px!important;padding:10px 0!important}
.sticky .inner b{font-size:14px!important;color:#273246!important}
.sticky .inner span{font-size:12px!important;color:#697386!important}

footer.site-footer{background:var(--footer)!important;color:#f4f6f8!important;padding:48px 0 92px!important;border-top:6px solid var(--brand)!important;font-size:13px!important}
.site-footer .footer-grid{display:grid!important;grid-template-columns:minmax(250px,1.2fr) minmax(330px,1fr)!important;gap:50px!important;align-items:start!important}
.site-footer .footer-brand{font-size:24px!important;font-weight:820!important;letter-spacing:-.03em!important;color:#fff!important;margin-bottom:10px!important}
.site-footer .footer-copy{max-width:620px!important;color:var(--footer-muted)!important;line-height:1.65!important;margin:0!important}
.site-footer .footer-links{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:10px 18px!important}
.site-footer .footer-links a{color:#fff!important;text-decoration:none!important;font-weight:680!important;white-space:nowrap!important}
.site-footer .footer-links a:hover{text-decoration:underline!important}
.site-footer .footer-meta{grid-column:1/-1!important;border-top:1px solid rgba(255,255,255,.14)!important;margin-top:4px!important;padding-top:20px!important;color:#aeb8c5!important;font-size:12px!important;line-height:1.55!important}

/* Utility pages */
.utility-main{padding:54px 0 80px!important;background:#fff!important}
.utility-shell{max-width:900px!important;margin:auto!important}
.utility-shell h1{font-size:48px!important;line-height:1.05!important;letter-spacing:-.04em!important;margin:10px 0 18px!important}
.utility-shell h2{font-size:27px!important;line-height:1.2!important;margin:34px 0 12px!important;letter-spacing:-.02em!important}
.utility-shell p,.utility-shell li{color:#536074!important;font-size:16px!important;line-height:1.7!important}
.utility-form{margin-top:28px!important;padding:26px!important;border:1px solid var(--line)!important;border-radius:20px!important;background:var(--surface-alt)!important}
.form-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:16px!important}
.form-field{display:grid!important;gap:7px!important}
.form-field.full{grid-column:1/-1!important}
.form-field label{font-size:13px!important;font-weight:760!important;color:#334155!important}
.form-field input,.form-field select,.form-field textarea{width:100%!important;border:1px solid #d8d4d1!important;border-radius:10px!important;padding:12px 13px!important;background:#fff!important;font:inherit!important;color:#243044!important}
.form-field textarea{min-height:150px!important;resize:vertical!important}
.form-note{font-size:12px!important;color:#6b7280!important;margin:12px 0 0!important}
.preview-form-status{display:none;margin-top:14px;padding:12px 14px;border-radius:10px;background:#eef8f2;color:#245c3f;font-size:13px}

@media(max-width:1100px){
  .timeline.timeline-cols-5{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .wide-cards.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .wrap{padding-left:22px!important;padding-right:22px!important}
  .hero{grid-template-columns:1fr!important;padding-top:34px!important}
  .hero-copy,.hero-art,.hero-actions,.trust-row{grid-column:1!important;grid-row:auto!important}
  .hero-art{height:auto!important;min-height:0!important;max-height:none!important}
  .hero-art img{width:100%!important;height:auto!important;aspect-ratio:16/10!important;object-fit:cover!important}
  .feature-wide.feature-wide-unified{grid-template-columns:1fr!important}
  .feature-wide.feature-wide-unified>.photo,.feature-wide.feature-wide-unified>.feature-media-copy,.feature-wide.feature-wide-unified>.wide-cards{grid-column:1!important;grid-row:auto!important}
  .feature-wide.feature-wide-unified>.photo{height:auto!important;min-height:0!important;max-height:none!important}
  .feature-wide.feature-wide-unified>.photo img{height:auto!important;aspect-ratio:16/10!important;object-fit:cover!important}
  .grid3,.grid4,.guides,.timeline,.timeline.timeline-cols-5,.timeline.timeline-cols-3,.timeline.timeline-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .wide-cards.cols-4,.wide-cards.cols-3,.wide-cards.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scorecard{border:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important}
  .scorecard table{display:block!important;width:100%!important;min-width:0!important}
  .scorecard thead{display:none!important}
  .scorecard tbody{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important}
  .scorecard tr{display:block!important;width:100%!important;border:1px solid var(--line)!important;border-radius:16px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 4px 14px rgba(23,32,51,.035)!important}
  .scorecard td{display:grid!important;grid-template-columns:minmax(110px,34%) minmax(0,1fr)!important;gap:12px!important;width:100%!important;padding:11px 13px!important;border-bottom:1px solid var(--line)!important;white-space:normal!important;overflow:visible!important}
  .scorecard td:last-child{border-bottom:0!important}
  .scorecard td::before{content:attr(data-label)!important;font-size:10px!important;line-height:1.3!important;text-transform:uppercase!important;letter-spacing:.045em!important;font-weight:800!important;color:#7b4b46!important;overflow-wrap:anywhere!important}
  .sticky{display:none!important}
  footer.site-footer{padding-bottom:42px!important}
  .site-footer .footer-grid{grid-template-columns:1fr!important;gap:26px!important}
  .site-footer .footer-links{justify-content:flex-start!important}
  .form-grid{grid-template-columns:1fr!important}
  .form-field.full{grid-column:1!important}
}
@media(max-width:640px){
  .wrap{padding-left:16px!important;padding-right:16px!important}
  header .nav{height:62px!important}
  header .brand{font-size:21px!important}
  header .brand small{font-size:8px!important}
  header .btn.small{padding:10px 14px!important;font-size:12px!important}
  .hero{padding-top:26px!important;padding-bottom:28px!important}
  .hero h1{font-size:37px!important}
  .hero .lede{font-size:15px!important}
  .hero-actions{display:grid!important;grid-template-columns:1fr 1fr!important}
  .hero-actions .btn{width:100%!important;padding:11px 10px!important;font-size:12px!important}
  .section{padding:46px 0!important}
  .section-head h2,.section>.wrap>.section-head h2{font-size:28px!important}
  .answer-hero{padding:20px!important}
  .answerline,.answer-hero .answerline{font-size:18px!important;line-height:1.55!important;font-weight:580!important}
  .grid2,.grid3,.grid4,.guides,.timeline,.timeline.timeline-cols-5,.timeline.timeline-cols-3,.timeline.timeline-cols-2,.wide-cards.cols-4,.wide-cards.cols-3,.wide-cards.cols-2{grid-template-columns:1fr!important}
  .scorecard td{grid-template-columns:1fr!important;gap:5px!important}
  .partner{grid-template-columns:1fr!important;padding:24px!important}
  .partner h2{font-size:27px!important}
  .utility-shell h1{font-size:38px!important}
}

/* V3.1 consistency corrections */
.section-head h2{max-width:none!important;width:100%!important}
.section>.wrap>p,.section>.wrap>.callout,.section>.wrap>ol.steps,.section>.wrap>ul.plain-list{width:100%!important;max-width:960px!important}
.prose{width:100%!important;max-width:none!important}
.prose>p,.prose>ul,.prose>ol,.article-copy{max-width:960px!important;width:100%!important}
.callout{border:1px solid #f0dfdb!important;border-left:4px solid var(--brand)!important;border-radius:14px!important;background:#fff7f5!important;padding:18px 20px!important;box-shadow:none!important}
.mobile-hero-actions{display:none!important}


/* ---- systemic-v4.css ---- */

/* PETINS V4 HUMAN SYSTEMIC CORRECTION — 2026-10-05 */

/* Full-width ordinary article prose on desktop. No narrow inherited reading box. */
.section>.wrap>.reading,
.section>.wrap>.content,
.section>.wrap>.prose,
.section>.wrap>.article-copy{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
.section>.wrap>.reading,
.section>.wrap>.prose{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding-left:0!important;
  padding-right:0!important;
}
.section>.wrap>.reading>p,
.section>.wrap>.reading>ul,
.section>.wrap>.reading>ol,
.section>.wrap>.content>p,
.section>.wrap>.prose>p,
.section>.wrap>.prose>ul,
.section>.wrap>.prose>ol,
.section>.wrap>.article-copy{
  width:100%!important;
  max-width:none!important;
}

/* One mid-article CTA geometry everywhere. */
.partner{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:28px!important;
  align-items:center!important;
}
.partner>.partner-copy{
  min-width:0!important;
  width:100%!important;
}
.partner>.partner-action{
  min-width:176px!important;
  justify-self:end!important;
  align-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
}
.partner>.partner-action>.btn{
  min-width:176px!important;
  min-height:48px!important;
  padding:14px 22px!important;
  white-space:nowrap!important;
}

/* Utility-form actions: comfortable click/touch target. */
.utility-form .btn,
.utility-form button[type="submit"]{
  min-height:52px!important;
  padding:15px 24px!important;
  font-size:15px!important;
  line-height:1.2!important;
}

/* Disclosure belongs in footer/disclaimer, not inside article CTAs. */
main .disclosure{display:none!important}

/* Below desktop: hero is ALWAYS copy, image, actions, trust. */
@media(max-width:900px){
  .hero{
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  .hero>.hero-copy{
    grid-column:1!important;
    grid-row:1!important;
  }
  .hero>.hero-art{
    grid-column:1!important;
    grid-row:2!important;
  }
  .hero>.hero-actions{
    grid-column:1!important;
    grid-row:3!important;
    margin-top:0!important;
  }
  .hero>.trust-row{
    grid-column:1!important;
    grid-row:4!important;
  }
  .partner{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .partner>.partner-action{
    min-width:0!important;
    justify-self:start!important;
    justify-content:flex-start!important;
  }
}
@media(max-width:640px){
  .hero>.hero-actions{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
  }
  .hero>.hero-actions .btn{
    width:100%!important;
  }
  .partner>.partner-action{
    width:100%!important;
  }
  .partner>.partner-action>.btn{
    width:100%!important;
    min-width:0!important;
  }
  .utility-form .btn,
  .utility-form button[type="submit"]{
    width:100%!important;
    min-height:54px!important;
  }
}


/* V5 final human visual correction: Direct Answer typography + consistent hero trust block */
#direct-answer .answer-hero .answerline,
#direct-answer .answerline,
.answer-hero .answerline{
  font-size:16px!important;
  line-height:1.7!important;
  font-weight:500!important;
  letter-spacing:0!important;
}
.hero>.trust-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px 18px!important;
  align-items:center!important;
  font-size:13px!important;
  font-weight:650!important;
}
.hero>.trust-row span{display:inline-flex!important;align-items:center!important;white-space:nowrap!important}
@media(max-width:640px){
  #direct-answer .answer-hero .answerline,
  #direct-answer .answerline,
  .answer-hero .answerline{font-size:16px!important;line-height:1.68!important;font-weight:500!important}
  .hero>.trust-row{gap:8px 14px!important;font-size:12px!important}
}


/* ---- brand-v12.css ---- */

/* Shared brand lock: favicon mark + config-owned site name. */
header .brand{display:flex!important;align-items:center!important;gap:10px!important;white-space:nowrap!important}
header .brand-mark{width:40px!important;height:40px!important;flex:0 0 40px!important;display:block!important;border-radius:11px!important;object-fit:cover!important}
header .brand-copy{display:flex!important;flex-direction:column!important;justify-content:center!important;line-height:1!important}
header .brand-name{display:block!important;font:inherit!important;color:inherit!important;letter-spacing:inherit!important;line-height:1!important}
header .brand small{margin-top:4px!important;text-align:left!important}
@media(max-width:640px){header .brand{gap:8px!important}header .brand-mark{width:34px!important;height:34px!important;flex-basis:34px!important;border-radius:9px!important}header .brand-name{font-size:19px!important}header .brand small{font-size:7px!important}}

.footer-copyright-wrap{width:100%;}
.footer-copyright{width:100%;margin:18px 0 0;padding:12px 0 0;text-align:center;font-size:12px;line-height:1.4;color:rgba(255,255,255,.72);}

