@charset "UTF-8";
/* ═══════════════════════════════════════════════════════════════
   PETS PASH - informative pages rebuilt as real HTML/CSS (no page-sized pictures):
   hero banners, category cards, philosophy / trust blocks, family story rows, service cards, brand grid,
   "call us" bar and feature strip. Only the photographs (catalog/view/image/petspash/pages/*.jpg) are images.
   Scoped to .pinfo; loaded together with ps18-info.css.
═══════════════════════════════════════════════════════════════ */

.pinfo {
  --or: #f26a1e;
  --or-dark: #d9560f;
  --gr: #0f3a2b;
  --paper: #fdf7ef;
  --card: #fffaf4;
  --line: #f0e2d0;
  --ink: #1d2b24;
  --script: 'Courgette', 'Kalam', 'Segoe Script', cursive;
  --cond: 'Oswald', 'Arial Narrow', 'Poppins', sans-serif;
  background: var(--paper);
}
.pinfo .o { color: var(--or); }
.pinfo .g { color: var(--gr); }
.pinfo b, .pinfo strong { font-weight: 600; }
.pinfo .pw-paw { color: var(--or); }

/* ═══ LOGO LOCKUP ═══ */
.pinfo .plogo { display: inline-flex; flex-direction: column; align-items: center; text-align: center; line-height: 1; }
.pinfo .plogo-paw { display: flex; align-items: center; gap: 10px; color: var(--or); font-size: 28px; margin-bottom: 4px; }
.pinfo .plogo-paw::before, .pinfo .plogo-paw::after { content: ""; width: 26px; height: 2px; background: var(--gr); opacity: .75; }
.pinfo .plogo b { font-family: var(--cond); font-weight: 700; font-size: 62px; letter-spacing: 1px; line-height: 1; }
.pinfo .plogo em { display: flex; align-items: center; gap: 12px; font-style: normal; font-weight: 600; font-size: 16px; letter-spacing: 3px; color: var(--gr); margin-top: 8px; }
.pinfo .plogo em::before, .pinfo .plogo em::after { content: ""; width: 34px; height: 2px; background: var(--gr); }
.pinfo .plogo small { display: flex; align-items: center; gap: 12px; font-size: 14px; font-weight: 600; letter-spacing: 3px; color: var(--or); margin-top: 8px; }
.pinfo .plogo small::before, .pinfo .plogo small::after { content: ""; width: 34px; height: 2px; background: var(--or); }

/* ═══ PAGE HERO (Locations, Services, Brands, Contact) ═══ */
.pinfo .ph { position: relative; overflow: hidden; background: linear-gradient(90deg, #fdf6ec 0%, #fcf4e8 55%, #f9eddc 100%); }
.pinfo .ph-in { position: relative; z-index: 2; min-height: 560px; display: flex; align-items: center; padding-top: 34px; padding-bottom: 54px; }
.pinfo .ph-text { width: 52%; max-width: 640px; text-align: center; display: flex; flex-direction: column; align-items: center; }
.pinfo .ph-title { font-family: var(--cond); font-weight: 700; font-size: clamp(46px, 6.4vw, 96px); line-height: 1.02; color: var(--gr); text-transform: uppercase; letter-spacing: 1px; margin: 22px 0 6px; }
.pinfo .ph-title .o { display: block; font-family: var(--script); font-weight: 400; text-transform: none; font-size: .62em; line-height: 1.1; letter-spacing: 0; margin-top: 4px; }
.pinfo .ph-script { display: flex; align-items: center; gap: 16px; font-family: var(--script); font-size: clamp(22px, 2.6vw, 36px); line-height: 1.2; color: var(--gr); margin: 6px 0 0; }
.pinfo .ph-script::before, .pinfo .ph-script::after { content: ""; flex: 0 0 26px; height: 26px; background:
  linear-gradient(var(--or), var(--or)) 0 0 / 22px 2px no-repeat,
  linear-gradient(var(--or), var(--or)) 4px 11px / 22px 2px no-repeat,
  linear-gradient(var(--or), var(--or)) 0 22px / 22px 2px no-repeat; }
.pinfo .ph-script::before { transform: scaleX(1); }
.pinfo .ph-script::after { transform: scaleX(-1); }
.pinfo .ph-div { display: flex; align-items: center; justify-content: center; gap: 12px; color: var(--or); margin: 14px 0 12px; width: 62%; }
.pinfo .ph-div::before, .pinfo .ph-div::after { content: ""; flex: 1; height: 2px; background: var(--or); }
.pinfo .ph-lead { font-size: clamp(15px, 1.35vw, 19px); line-height: 1.6; color: var(--ink); max-width: 480px; }
.pinfo .ph-photo { position: absolute; z-index: 1; right: 0; top: 0; bottom: 0; width: min(58%, 900px); }
.pinfo .ph-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 18% 100%; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 16%); mask-image: linear-gradient(90deg, transparent 0, #000 16%); }
.pinfo .ph-leaf { position: absolute; z-index: 1; color: #3f7d3a; font-size: 74px; opacity: .85; pointer-events: none; }
.pinfo .ph-leaf.tl { left: -8px; top: -6px; transform: rotate(-25deg); }
.pinfo .ph-leaf.tl + .ph-leaf.tl2 { left: 36px; top: 24px; font-size: 52px; transform: rotate(10deg); opacity: .7; }
.pinfo .ph-paw { position: absolute; z-index: 1; color: #f0cfa6; opacity: .45; pointer-events: none; }

/* ═══ SECTION TITLES ═══ */
.pinfo .sec-title { display: flex; align-items: center; justify-content: center; gap: 16px; text-align: center; font-family: var(--cond); font-weight: 700; font-size: clamp(26px, 3.2vw, 40px); line-height: 1.15; letter-spacing: .5px; color: var(--gr); text-transform: uppercase; margin: 0; }
.pinfo .sec-title::before, .pinfo .sec-title::after { content: ""; flex: 0 0 26px; height: 26px; background:
  linear-gradient(var(--or), var(--or)) 0 2px / 20px 3px no-repeat,
  linear-gradient(var(--or), var(--or)) 4px 12px / 20px 3px no-repeat,
  linear-gradient(var(--or), var(--or)) 0 22px / 20px 3px no-repeat; }
.pinfo .sec-title::after { transform: scaleX(-1); }
.pinfo .sec-title.plain::before, .pinfo .sec-title.plain::after { display: none; }
.pinfo .sec-sub { text-align: center; font-size: 17px; color: var(--ink); margin: 8px 0 0; }

/* ═══ ABOUT: HERO ═══ */
.pinfo .ab-hero { position: relative; overflow: hidden; background: linear-gradient(100deg, #fffaf3 0%, #fdf4e7 100%); }
.pinfo .ab-hero-in { position: relative; z-index: 2; padding-top: 28px; padding-bottom: 40px; }
.pinfo .ab-hero-text { width: 50%; max-width: 560px; }
.pinfo .ab-hero-text .plogo { display: flex; margin: 0 auto 8px; }
.pinfo .ab-title { font-family: var(--cond); font-weight: 700; font-size: clamp(42px, 5vw, 68px); line-height: 1.05; text-align: center; margin: 14px 0 8px; text-transform: uppercase; letter-spacing: .5px; }
.pinfo .ab-script { display: flex; align-items: center; justify-content: center; gap: 12px; font-family: var(--script); font-size: clamp(17px, 1.8vw, 24px); color: var(--gr); text-align: center; line-height: 1.3; margin: 0 0 18px; }
.pinfo .ab-script::before, .pinfo .ab-script::after { content: "\2726"; color: var(--or); font-size: 18px; }
.pinfo .ab-hero-text p { font-size: 15.5px; line-height: 1.75; color: var(--ink); margin: 0 0 14px; }
.pinfo .ab-hero-photo { position: absolute; z-index: 1; right: 0; top: 0; bottom: 0; width: min(52%, 800px); }
.pinfo .ab-hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 30% 50%; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 12%); mask-image: linear-gradient(90deg, transparent 0, #000 12%); }

/* ═══ ABOUT: EVERYTHING YOUR PET NEEDS ═══ */
.pinfo .ab-needs { padding: 34px 0 30px; }
.pinfo .ab-cards { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; margin-top: 26px; }
.pinfo .ab-card { background: var(--card); border: 1px solid var(--line); border-radius: 16px; padding: 18px 12px 18px; text-align: center; display: flex; flex-direction: column; align-items: center; }
.pinfo .ab-ico { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; color: #fff; font-size: 24px; margin-bottom: 8px; }
.pinfo .ab-card h3 { font-size: 21px; font-weight: 600; line-height: 1.2; margin: 0 0 6px; }
.pinfo .ab-card .ab-pic { height: 178px; width: 100%; display: flex; align-items: flex-end; justify-content: center; margin: 4px 0 10px; }
.pinfo .ab-card .ab-pic img { max-width: 100%; max-height: 100%; object-fit: contain; mix-blend-mode: multiply; }
.pinfo .ab-card p { font-size: 14px; line-height: 1.65; color: #2b3830; margin: 0; }
.pinfo .c-orange { background: #f26a1e; } .pinfo .t-orange { color: #f26a1e; }
.pinfo .c-green { background: #2e7d32; } .pinfo .t-green { color: #2e7d32; }
.pinfo .c-blue { background: #1565c0; } .pinfo .t-blue { color: #1565c0; }
.pinfo .c-purple { background: #5e35b1; } .pinfo .t-purple { color: #5e35b1; }
.pinfo .c-teal { background: #12806e; } .pinfo .t-teal { color: #12806e; }

/* ═══ ABOUT: PHILOSOPHY ═══ */
.pinfo .ab-phil { padding: 8px 0 26px; }
.pinfo .ab-phil-in { display: grid; grid-template-columns: 312px minmax(0, 1fr) 270px; gap: 26px; align-items: center; }
.pinfo .ab-phil-photo { border-radius: 16px; overflow: hidden; align-self: stretch; }
.pinfo .ab-phil-photo img { width: 100%; height: 100%; object-fit: cover; -webkit-mask-image: linear-gradient(90deg, #000 78%, transparent); mask-image: linear-gradient(90deg, #000 78%, transparent); }
.pinfo .ab-eyebrow { font-weight: 700; font-size: 18px; letter-spacing: .5px; color: var(--or); text-transform: uppercase; display: flex; align-items: center; gap: 8px; margin: 0; }
.pinfo .ab-bigscript { font-family: var(--script); font-size: clamp(30px, 3.4vw, 46px); line-height: 1.15; color: var(--ink); margin: 2px 0 12px; }
.pinfo .ab-phil-text p { font-size: 15px; line-height: 1.7; margin: 0 0 10px; color: #26332c; }
.pinfo .ab-phil-box { background: #fffdf9; border: 1px solid var(--line); border-radius: 16px; padding: 14px 18px; display: flex; flex-direction: column; gap: 4px; }
.pinfo .ab-phil-box li { display: flex; align-items: center; gap: 14px; padding: 12px 0; font-weight: 600; font-size: 15.5px; line-height: 1.35; color: var(--gr); }
.pinfo .ab-phil-box li + li { border-top: 1px solid #f3e9db; }
.pinfo .ab-phil-box i { flex: 0 0 38px; font-size: 30px; color: var(--gr); text-align: center; }

/* ═══ ABOUT: TRUST ═══ */
.pinfo .ab-trust { padding: 10px 0 44px; }
.pinfo .ab-trust-in { display: grid; grid-template-columns: 312px minmax(0, 1fr) 270px; gap: 26px; align-items: stretch; background: #fffdf9; border: 1px solid var(--line); border-radius: 18px; padding: 16px; }
.pinfo .ab-trust-photo { border-radius: 12px; overflow: hidden; }
.pinfo .ab-trust-photo img { width: 100%; height: 100%; object-fit: cover; }
.pinfo .ab-trust-text h2 { font-family: var(--cond); font-weight: 700; font-size: 30px; letter-spacing: .5px; color: var(--gr); text-transform: uppercase; margin: 6px 0 10px; display: flex; align-items: center; gap: 10px; }
.pinfo .ab-trust-text h2 .o { font-size: inherit; }
.pinfo .ab-trust-text p { font-size: 15px; line-height: 1.7; margin: 0 0 10px; color: #26332c; }
.pinfo .ab-goal { display: flex; align-items: center; gap: 0; border: 2px solid var(--or); border-radius: 8px; overflow: hidden; margin: 8px 0 12px; background: #fff; }
.pinfo .ab-goal i { flex: 0 0 52px; align-self: stretch; display: grid; place-items: center; background: var(--or); color: #fff; font-size: 24px; }
.pinfo .ab-goal span { padding: 10px 14px; font-weight: 600; font-size: 15px; line-height: 1.4; color: var(--gr); }
.pinfo .ab-map { position: relative; border-radius: 14px; overflow: hidden; min-height: 240px; background:
  linear-gradient(115deg, transparent 47%, #ece3d6 47.5%, #ece3d6 49%, transparent 49.5%),
  linear-gradient(35deg, transparent 58%, #ece3d6 58.5%, #ece3d6 60%, transparent 60.5%),
  linear-gradient(75deg, transparent 22%, #f0e8dc 22.5%, #f0e8dc 24%, transparent 24.5%),
  linear-gradient(160deg, #f7f2ea, #efe7da); }
.pinfo .ab-map svg { position: absolute; inset: 0; width: 100%; height: 100%; }
.pinfo .ab-pin { position: absolute; display: flex; align-items: center; gap: 8px; }
.pinfo .ab-pin i { color: var(--or); font-size: 38px; filter: drop-shadow(0 3px 3px rgba(0,0,0,.2)); }
.pinfo .ab-pin span { background: var(--gr); color: #fff; font-weight: 700; font-size: 13px; line-height: 1.25; padding: 7px 12px; border-radius: 6px; text-transform: uppercase; letter-spacing: .4px; }
.pinfo .ab-pin.p1 { left: 14%; top: 14%; }
.pinfo .ab-pin.p2 { left: 36%; bottom: 10%; }

/* ═══ OUR FAMILY ═══ */
.pinfo .fm-hero { position: relative; overflow: hidden; background: linear-gradient(100deg, #fff9f1 0%, #fdf3e5 100%); }
.pinfo .fm-hero-in { position: relative; z-index: 2; display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: 30px; align-items: center; padding-top: 30px; padding-bottom: 54px; min-height: 470px; }
.pinfo .fm-begin { background: rgba(255, 250, 243, .92); border: 1px solid var(--line); border-radius: 18px; padding: 20px 22px; box-shadow: 0 8px 26px rgba(120, 70, 20, .07); }
.pinfo .fm-begin h2 { font-family: var(--cond); font-weight: 700; font-size: 20px; letter-spacing: .6px; text-transform: uppercase; color: var(--gr); text-align: center; margin: 0 0 12px; }
.pinfo .fm-begin p { font-size: 13.5px; line-height: 1.65; margin: 0 0 9px; color: #26332c; }
.pinfo .fm-quote { color: var(--or); font-weight: 600; font-size: 15.5px; line-height: 1.45; display: flex; gap: 8px; margin: 4px 0 10px; }
.pinfo .fm-quote i { font-size: 12px; margin-top: 4px; }
.pinfo .fm-head { text-align: center; max-width: 520px; position: relative; z-index: 2; }
.pinfo .fm-head h1 { font-family: var(--cond); font-weight: 700; font-size: clamp(38px, 4.6vw, 62px); line-height: 1.04; text-transform: uppercase; margin: 0; letter-spacing: .5px; }
.pinfo .fm-head .ab-script { margin-top: 18px; font-size: clamp(18px, 1.9vw, 26px); }
.pinfo .fm-head .ab-script::before, .pinfo .fm-head .ab-script::after { content: "\2661"; font-size: 24px; }
.pinfo .fm-head p { font-size: 15.5px; line-height: 1.7; color: var(--ink); margin: 0; }
.pinfo .fm-hero-photo { position: absolute; z-index: 1; right: 0; top: 0; bottom: 0; width: min(46%, 700px); }
.pinfo .fm-hero-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 20% 40%; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 14%); mask-image: linear-gradient(90deg, transparent 0, #000 14%); }
.pinfo .fm-hero::after { content: ""; position: absolute; z-index: 3; left: -4%; bottom: -26px; width: 58%; height: 60px; border-top: 5px solid var(--or); border-radius: 50% 100% 0 0 / 100% 100% 0 0; transform: rotate(-3deg); }
.pinfo .fm-meet { padding: 40px 0 22px; }
.pinfo .fm-layout { display: grid; grid-template-columns: minmax(0, 1fr) 226px; gap: 26px; align-items: start; margin-top: 22px; }
.pinfo .fm-rows { display: flex; flex-direction: column; gap: 6px; }
.pinfo .fm-row { display: grid; grid-template-columns: 282px minmax(0, 1fr); gap: 0; align-items: stretch; background: var(--card); border: 1px solid var(--line); border-radius: 14px; overflow: hidden; }
.pinfo .fm-row.flip { grid-template-columns: minmax(0, 1fr) 322px; }
.pinfo .fm-row.flip .fm-photo { order: 2; }
.pinfo .fm-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pinfo .fm-body { padding: 14px 18px 14px; }
.pinfo .fm-name { display: flex; align-items: center; gap: 10px; font-family: var(--cond); font-weight: 700; font-size: 30px; line-height: 1.1; letter-spacing: .5px; color: var(--or); text-transform: uppercase; margin: 0; }
.pinfo .fm-name i { font-size: 20px; }
.pinfo .fm-role { font-family: var(--script); font-size: 19px; color: var(--ink); margin: 0 0 8px 30px; }
.pinfo .fm-body p { font-size: 13.2px; line-height: 1.6; margin: 0 0 7px; color: #26332c; }
.pinfo .fm-body p .o, .pinfo .fm-body p.o { color: #d8431a; font-weight: 600; }
.pinfo .fm-chip { display: inline-flex; align-items: center; gap: 8px; background: #fff3e6; border: 1px solid #f6d9bd; border-radius: 8px; padding: 6px 12px; font-weight: 600; font-size: 13px; color: var(--gr); margin-top: 4px; }
.pinfo .fm-chip i { color: #e5392e; }
.pinfo .fm-chips { display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: center; background: #fff3e6; border: 1px solid #f6d9bd; border-radius: 8px; padding: 6px 12px; margin-top: 4px; font-weight: 600; font-size: 13px; color: var(--gr); }
.pinfo .fm-chips span { display: inline-flex; align-items: center; gap: 6px; }
.pinfo .fm-chips span i { color: var(--or); }
.pinfo .fm-side { background: linear-gradient(180deg, #14442f, #0d3324); color: #fff; border-radius: 22px; padding: 22px 16px 24px; text-align: center; position: sticky; top: 14px; }
.pinfo .fm-side > i.pw { color: var(--or); font-size: 22px; }
.pinfo .fm-side h3 { font-family: var(--cond); font-weight: 600; font-size: 25px; line-height: 1.12; letter-spacing: .6px; text-transform: uppercase; margin: 8px 0 0; color: #fff; }
.pinfo .fm-side h3 b { display: block; font-size: 42px; color: var(--or); font-weight: 700; }
.pinfo .fm-scan { font-family: var(--script); font-size: 17px; color: #ffb27f; margin: 6px 0 8px; letter-spacing: 1px; }
.pinfo .fm-qr { background: #fff; border: 2px solid var(--or); border-radius: 12px; padding: 8px; }
.pinfo .fm-qr img { width: 100%; height: auto; display: block; }
.pinfo .fm-join { font-size: 14px; line-height: 1.5; margin: 14px 0 10px; color: #f3ede2; }
.pinfo .fm-checks { text-align: left; display: flex; flex-direction: column; gap: 10px; }
.pinfo .fm-checks li { display: flex; align-items: flex-start; gap: 9px; font-size: 13px; line-height: 1.4; color: #f3ede2; }
.pinfo .fm-checks i { color: var(--or); font-size: 20px; margin-top: 0; }
.pinfo .fm-because { font-family: var(--script); font-size: 19px; line-height: 1.3; color: #fff; text-align: left; margin: 16px 4px 0; }
.pinfo .fm-inspire { padding: 14px 0 46px; }
.pinfo .fm-inspire-in { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 20px; }
.pinfo .fm-inspire-main, .pinfo .fm-together { background: #fffdf9; border: 1px solid var(--line); border-radius: 16px; padding: 20px 24px; }
.pinfo .fm-inspire-main { text-align: center; }
.pinfo .fm-inspire-main > p { font-size: 14px; line-height: 1.6; margin: 8px auto 0; max-width: 640px; color: #26332c; }
.pinfo .fm-inspire-main .ab-script { margin: 6px 0 14px; font-size: 19px; }
.pinfo .fm-inspire-main .ab-script::before, .pinfo .fm-inspire-main .ab-script::after { display: none; }
.pinfo .fm-reps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; text-align: left; }
.pinfo .fm-rep { display: flex; gap: 10px; align-items: center; }
.pinfo .fm-rep + .fm-rep { border-left: 1px solid #f1e3d1; padding-left: 12px; }
.pinfo .fm-rep > i { flex: 0 0 52px; text-align: center; font-size: 44px; color: var(--or); }
.pinfo .fm-rep b { display: block; font-family: var(--cond); font-weight: 700; font-size: 19px; color: var(--gr); text-transform: uppercase; }
.pinfo .fm-rep span { font-size: 13.5px; line-height: 1.4; color: #26332c; }
.pinfo .fm-together { text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; }
.pinfo .fm-together h3 { font-family: var(--cond); font-weight: 600; font-size: 21px; line-height: 1.25; letter-spacing: .4px; text-transform: uppercase; color: var(--gr); margin: 0 0 6px; }
.pinfo .fm-together .plogo b { font-size: 46px; }
.pinfo .fm-together .plogo em, .pinfo .fm-together .plogo small { font-size: 12px; letter-spacing: 2px; }

/* ═══ SERVICES ═══ */
.pinfo .sv-cards { padding: 38px 0 26px; }
.pinfo .sv-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.pinfo .sv-card { position: relative; background: var(--card); border: 1.5px solid #f6cfae; border-radius: 28px; padding: 0 22px 0; text-align: center; display: flex; flex-direction: column; overflow: hidden; }
.pinfo .sv-ico { width: 84px; height: 84px; border-radius: 50%; display: grid; place-items: center; color: #fff; font-size: 38px; margin: 16px auto 8px; box-shadow: 0 8px 20px rgba(0, 0, 0, .12); }
.pinfo .sv-card h2 { font-family: var(--cond); font-weight: 700; font-size: clamp(26px, 2.5vw, 34px); line-height: 1.12; letter-spacing: .4px; text-transform: uppercase; color: var(--gr); margin: 6px 0 6px; }
.pinfo .sv-sub { font-weight: 700; font-size: 18px; line-height: 1.35; color: var(--or); margin: 0 0 4px; }
.pinfo .sv-div { display: flex; align-items: center; gap: 10px; color: var(--or); justify-content: center; margin: 10px 0 12px; }
.pinfo .sv-div::before, .pinfo .sv-div::after { content: ""; flex: 1; max-width: 120px; border-top: 2px dashed var(--or); }
.pinfo .sv-card p.sv-text { font-size: 16px; line-height: 1.75; color: #1d2b3a; margin: 0 0 14px; }
.pinfo .sv-photo { margin: auto -22px 0; }
.pinfo .sv-photo img { width: 100%; display: block; }

/* ═══ BRANDS ═══ */
.pinfo .br-section { padding: 22px 0 40px; background: var(--paper); }
.pinfo .br-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.pinfo .br-card { background: #fffdf9; border: 1px solid var(--line); border-radius: 12px; padding: 14px 10px 14px; text-align: center; display: flex; flex-direction: column; align-items: center; transition: box-shadow .15s, transform .15s, border-color .15s; min-height: 166px; }
.pinfo .br-card:hover { box-shadow: 0 10px 26px rgba(120, 70, 20, .12); transform: translateY(-2px); border-color: #f4cfa8; }
.pinfo .br-logo { height: 96px; display: flex; align-items: center; justify-content: center; margin-bottom: 6px; width: 100%; }
.pinfo .br-logo img { max-width: 88%; max-height: 92px; width: auto; height: auto; object-fit: contain; mix-blend-mode: multiply; }
.pinfo .br-card p { font-size: 14px; line-height: 1.45; color: #1d2b24; margin: auto 0 0; }

/* ═══ CALL US BAR ═══ */
.pinfo .pcall-wrap { padding: 8px 14px; background: var(--paper); }
.pinfo .pcall { display: flex; align-items: center; gap: 22px; max-width: 1600px; margin: 0 auto; background: #fffaf3; border: 4px solid var(--or); border-radius: 30px; padding: 16px 30px; }
.pinfo .pcall-paw { flex: 0 0 96px; height: 96px; border-radius: 50%; border: 3px solid var(--or); display: grid; place-items: center; color: var(--or); font-size: 50px; background: #fff; }
.pinfo .pcall-ask { font-family: var(--script); font-size: clamp(24px, 2.6vw, 38px); line-height: 1.12; color: var(--gr); flex: 1 1 280px; }
.pinfo .pcall-ask .o { color: var(--or); }
.pinfo .pcall-sep { align-self: stretch; border-left: 2px dotted var(--or); }
.pinfo .pcall-cta { font-family: var(--script); color: var(--or); font-size: clamp(22px, 2.2vw, 32px); text-align: center; flex: 0 0 auto; padding: 0 6px; }
.pinfo .pcall-cta svg { display: block; margin: 2px auto 0; width: 92px; height: 44px; color: var(--gr); }
.pinfo .pcall-nums { display: flex; flex-direction: column; flex: 2 1 420px; }
.pinfo .pcall-pair { display: flex; align-items: center; justify-content: space-around; gap: 16px; flex-wrap: wrap; }
.pinfo .pcall-one { display: flex; align-items: center; gap: 12px; }
.pinfo .pcall-one + .pcall-one { border-left: 2px solid var(--or); padding-left: 16px; }
.pinfo .pcall-one i { flex: 0 0 56px; height: 56px; border-radius: 50%; background: #1f8f3a; color: #fff; display: grid; place-items: center; font-size: 24px; }
.pinfo .pcall-one small { display: block; font-size: 14px; color: #111; line-height: 1.2; }
.pinfo .pcall-one b { display: block; font-family: var(--cond); font-weight: 600; font-size: clamp(22px, 2.1vw, 32px); color: #101510; line-height: 1.1; white-space: nowrap; }
.pinfo .pcall-help { display: flex; align-items: center; gap: 14px; justify-content: center; margin-top: 8px; font-size: 17px; color: #151d18; }
.pinfo .pcall-help::before, .pinfo .pcall-help::after { content: ""; width: 56px; border-top: 2px solid var(--or); }

/* ═══ FEATURE STRIP ═══ */
.pinfo .pfs-wrap { position: relative; background: var(--paper); padding: 8px 14px 0; }
.pinfo .pfs { max-width: 1600px; margin: 0 auto; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); background: #fffdf9; border: 1px solid var(--line); border-radius: 22px; padding: 16px 8px 18px; position: relative; z-index: 2; }
.pinfo .pfs-item { text-align: center; padding: 6px 14px; position: relative; }
.pinfo .pfs-item + .pfs-item::before { content: ""; position: absolute; left: 0; top: 14%; bottom: 8%; border-left: 1px solid #f3cfae; }
.pinfo .pfs-item .pfs-ico { font-size: 52px; line-height: 1; color: var(--or); margin-bottom: 8px; position: relative; display: inline-block; }
.pinfo .pfs-ico em { position: absolute; left: 0; right: 0; top: 50%; transform: translateY(-52%); font-style: normal; font-weight: 800; font-size: 14px; color: #fff; font-family: var(--cond); }
.pinfo .pfs-ico .in { position: absolute; left: 0; right: 0; top: 48%; transform: translateY(-50%); font-size: 21px; color: #fff; }
.pinfo .pfs-item b { display: block; font-weight: 700; font-size: 16px; text-transform: uppercase; color: #101510; line-height: 1.25; }
.pinfo .pfs-item > span:not(.pfs-ico) { display: block; font-size: 16px; line-height: 1.4; color: #1d2b24; }
.pinfo .pfs-wave { height: 54px; margin-top: -22px; position: relative; z-index: 1; background:
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 54' preserveAspectRatio='none'%3E%3Cpath d='M0 0 L0 30 Q120 4 360 12 T1000 30 T1440 14 L1440 54 L0 54 Z' fill='%23f26a1e'/%3E%3Cpath d='M0 54 L0 40 Q300 12 720 30 T1440 30 L1440 54 Z' fill='%230b4220'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat; }

/* ═══ RESPONSIVE ═══ */
@media (max-width: 1180px) {
  .pinfo .ab-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pinfo .ab-phil-in, .pinfo .ab-trust-in { grid-template-columns: 260px minmax(0, 1fr); }
  .pinfo .ab-phil-box, .pinfo .ab-map { grid-column: 1 / -1; }
  .pinfo .fm-layout { grid-template-columns: minmax(0, 1fr); }
  .pinfo .fm-side { position: static; max-width: 340px; margin: 0 auto; }
  .pinfo .br-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .pinfo .pfs { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 14px; }
  .pinfo .pfs-item:nth-child(4)::before { display: none; }
}
@media (max-width: 960px) {
  .pinfo .ph-in, .pinfo .ab-hero-in { min-height: 0; flex-direction: column; padding-bottom: 0; }
  .pinfo .ph-text, .pinfo .ab-hero-text { width: 100%; max-width: none; }
  .pinfo .ph-photo, .pinfo .ab-hero-photo, .pinfo .fm-hero-photo { position: relative; width: 100%; height: 340px; right: auto; margin-top: 10px; }
  .pinfo .ph-photo img, .pinfo .ab-hero-photo img, .pinfo .fm-hero-photo img { -webkit-mask-image: none; mask-image: none; object-position: 50% 100%; }
  .pinfo .fm-hero-in { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .pinfo .fm-hero::after { display: none; }
  .pinfo .fm-row, .pinfo .fm-row.flip { grid-template-columns: minmax(0, 1fr); }
  .pinfo .fm-row .fm-photo, .pinfo .fm-row.flip .fm-photo { order: 0; height: 240px; }
  .pinfo .fm-inspire-in { grid-template-columns: minmax(0, 1fr); }
  .pinfo .fm-reps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pinfo .sv-grid { grid-template-columns: minmax(0, 1fr); max-width: 520px; margin: 0 auto; }
  .pinfo .br-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .pinfo .pcall { flex-wrap: wrap; justify-content: center; text-align: center; padding: 18px; }
  .pinfo .pcall-sep { display: none; }
  .pinfo .pcall-paw { flex-basis: 76px; height: 76px; font-size: 38px; }
}
@media (max-width: 640px) {
  .pinfo .plogo b { font-size: 46px; }
  .pinfo .ab-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pinfo .ab-phil-in, .pinfo .ab-trust-in { grid-template-columns: minmax(0, 1fr); }
  .pinfo .ab-phil-photo, .pinfo .ab-trust-photo { height: 240px; }
  .pinfo .br-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pinfo .pfs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pinfo .pfs-item::before { display: none; }
  .pinfo .fm-reps { grid-template-columns: minmax(0, 1fr); }
  .pinfo .fm-rep + .fm-rep { border-left: 0; padding-left: 0; }
  .pinfo .sec-title::before, .pinfo .sec-title::after { display: none; }
  .pinfo .pcall-one + .pcall-one { border-left: 0; padding-left: 0; }
}

/* ═══ SPECIFICITY FIXES + HERO TEXT / PHOTO SPACING ═══ */
.pinfo .ab-hero-text p.ab-script { font-size: clamp(17px, 1.8vw, 24px); line-height: 1.3; margin: 0 0 18px; color: var(--gr); }
.pinfo .ab-phil-text p.ab-eyebrow { font-size: 18px; margin: 0; color: var(--or); line-height: 1.3; }
.pinfo .ab-phil-text p.ab-bigscript { font-size: clamp(30px, 3.4vw, 46px); line-height: 1.15; color: var(--ink); margin: 2px 0 12px; }
.pinfo .fm-head p.ab-script { font-size: clamp(18px, 1.9vw, 26px); margin: 18px 0 14px; color: var(--gr); line-height: 1.3; }
.pinfo .fm-inspire-main p.ab-script { font-size: 19px; margin: 6px 0 14px; color: var(--gr); }
.pinfo .fm-body p.fm-role { font-family: var(--script); font-size: 19px; line-height: 1.3; margin: 0 0 8px 30px; color: var(--ink); }
.pinfo .fm-begin p.fm-quote { font-size: 15.5px; line-height: 1.45; margin: 4px 0 10px; color: var(--or); }
.pinfo .fm-side p.fm-join { font-size: 14px; }
.pinfo .fm-side p.fm-scan { font-family: var(--script); font-size: 18px; color: #ffb27f; margin: 6px 0 8px; }
.pinfo .fm-side p.fm-because { font-family: var(--script); font-size: 19px; line-height: 1.3; color: #fff; margin: 16px 4px 0; text-align: left; }
.pinfo .fm-hero-in, .pinfo .ph-in { max-width: none; width: 100%; margin: 0; padding-left: max(24px, calc((100% - 1200px) / 2 + 24px)); }
.pinfo .fm-hero-in { padding-right: calc(min(46%, 700px) + 6px); }
.pinfo .ph-in { padding-right: calc(min(58%, 900px) * .8); }
.pinfo .ph-text { width: 100%; max-width: 660px; }
.pinfo .ph-title { white-space: nowrap; font-size: clamp(40px, 5.6vw, 84px); }
.pinfo .ab-hero-in { max-width: none; width: 100%; margin: 0; padding-left: max(24px, calc((100% - 1200px) / 2 + 24px)); padding-right: calc(min(52%, 800px) * .9); }
.pinfo .ab-hero-text { width: 100%; max-width: 580px; }
@media (max-width: 960px) {
  .pinfo .fm-hero-in, .pinfo .ph-in, .pinfo .ab-hero-in { padding-left: 24px; padding-right: 24px; }
  .pinfo .ph-title { white-space: normal; }
}

/* ═══ HERO BALANCE (text left, photo right) ═══ */
.pinfo .ph-in { padding-left: 5%; padding-right: 57%; }
.pinfo .ph-title { font-size: clamp(40px, 5.4vw, 82px); }
.pinfo .fm-hero-photo { width: min(42%, 640px); }
.pinfo .fm-hero-in { padding-right: calc(min(42%, 640px) + 4px); }
.pinfo .fm-head { max-width: none; }
.pinfo .fm-head h1 { white-space: nowrap; font-size: clamp(30px, 3.1vw, 54px); }
.pinfo .fm-hero-photo img { -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 22%); mask-image: linear-gradient(90deg, transparent 0, #000 22%); }
@media (max-width: 1100px) {
  .pinfo .ph-in { padding-right: 52%; }
  .pinfo .fm-hero-in { grid-template-columns: 250px minmax(0, 1fr); }
}
@media (max-width: 960px) {
  .pinfo .ph-in, .pinfo .fm-hero-in, .pinfo .ab-hero-in { padding-left: 24px; padding-right: 24px; }
  .pinfo .fm-head h1 { white-space: normal; }
}

/* ═══ SAME WIDTH AS THE REST OF THE SHOP (container 1600px, 28px gutters) ═══ */
.pinfo { --container: 1600px; }
.pinfo .pcont { max-width: 1600px; padding-left: 28px; padding-right: 28px; }
.pinfo .stores2 .pcont, .pinfo .stores2-banner-footer .pcont, .pinfo .cu-main .pcont { max-width: 1600px; }
.pinfo .fm-hero-in, .pinfo .ab-hero-in, .pinfo .ph-in { padding-left: max(28px, calc((100% - 1600px) / 2 + 28px)); }
.pinfo .pcall-wrap { padding: 8px 28px; }
.pinfo .pcall { max-width: 1544px; }
.pinfo .pfs-wrap { padding: 8px 0 0; }
.pinfo .pfs { width: calc(100% - 56px); max-width: 1544px; }
@media (max-width: 1199px) {
  .pinfo .pcont { padding-left: 16px; padding-right: 16px; }
  .pinfo .pcall-wrap { padding: 8px 16px; }
  .pinfo .pfs { width: calc(100% - 32px); }
}
@media (max-width: 960px) {
  .pinfo .fm-hero-in, .pinfo .ab-hero-in, .pinfo .ph-in { padding-left: 16px; padding-right: 16px; }
}

/* ═══ CURVED BOTTOM BAND: "Happy Pets, Happy Hearts / We Care They Deserve / Follow us" ═══ */
.pinfo .pfs-wave { height: 70px; margin-top: -25px; z-index: 1; background:
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 70' preserveAspectRatio='none'%3E%3Cpath d='M0 0 Q30 46 220 54 T700 50 T1220 54 Q1410 46 1440 0 L1440 70 L0 70 Z' fill='%23f26a1e'/%3E%3Cpath d='M0 54 Q260 30 560 46 T1100 40 T1440 52 L1440 70 L0 70 Z' fill='%2306261c'/%3E%3C/svg%3E") center bottom / 100% 100% no-repeat; }
.pinfo .pband { background: #06261c; margin-top: -1px; color: #fff; }
.pinfo .pband-in { max-width: 1600px; margin: 0 auto; padding: 22px 28px 40px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; gap: 24px; }
.pinfo .pband p { margin: 0; font-family: var(--script); font-size: clamp(26px, 2.8vw, 44px); line-height: 1.08; color: #fff; }
.pinfo .pband-hh { text-align: center; font-size: clamp(24px, 2.6vw, 38px); }
.pinfo .pband-hh i { color: #f5a623; font-size: .78em; vertical-align: -4px; margin-left: 4px; }
.pinfo .pband-wc { text-align: center; }
.pinfo .pband-wc .o { color: #ff6a1a; }
.pinfo .pband-wc i { color: #ff5a14; font-size: .8em; vertical-align: -4px; margin-left: 6px; }
.pinfo .pband-follow { display: flex; flex-direction: column; align-items: center; gap: 12px; }
.pinfo .pband-follow b { font-family: 'Poppins', sans-serif; font-weight: 700; font-size: 14px; letter-spacing: 1.5px; color: #f5a623; }
.pinfo .pband-follow span { display: flex; gap: 12px; }
.pinfo .pband-follow a { width: 34px; height: 34px; border-radius: 50%; background: #fff; color: #06261c; display: grid; place-items: center; font-size: 15px; text-decoration: none; transition: transform .15s, background .15s; }
.pinfo .pband-follow a:hover { background: #ff6a1a; color: #fff; transform: translateY(-2px); }
@media (max-width: 760px) {
  .pinfo .pband-in { grid-template-columns: minmax(0, 1fr); gap: 18px; padding-bottom: 30px; }
}

/* hero rows keep their own right padding (the photo column) */
.pinfo .fm-hero-in { padding-right: calc(min(42%, 640px) + 4px); }
.pinfo .ab-hero-in { padding-right: calc(min(52%, 800px) * .9); }
.pinfo .ph-in { padding-right: 57%; }
@media (max-width: 1100px) { .pinfo .ph-in { padding-right: 52%; } }
@media (max-width: 960px) {
  .pinfo .fm-hero-in, .pinfo .ab-hero-in, .pinfo .ph-in { padding-left: 16px; padding-right: 16px; }
}
