/* ============================================================
   Woofy | מערכת עיצוב (Design System)
   פלטה חמה-נועזת (Woofy Orange). RTL. עברית-first.
   Reusable skeleton: משמש את דף הבית, עמודי אשכול, מאמר וכלי.
   ============================================================ */

/* ------------------------------------------------------------
   FUP Elkanah (Fontup.co.il) — רישיון חינם לשימוש מסחרי.
   הקבצים והרישיון יושבים ב-/fonts/ (ראו fonts/LICENSE.txt).

   שימו לב: לפונט יש אותיות עבריות, ספרות וסימני פיסוק בלבד,
   ואין בו אותיות לטיניות או גרש/גרשיים עבריים (׳ ״). לכן Rubik
   נשאר בערימת הפונטים אחריו: הדפדפן בוחר פונט לכל תו בנפרד,
   כך שעברית מגיעה מ-Elkanah והאנגלית (AKC, VCA, wafy.co.il)
   ממשיכה להיראות כמו קודם במקום ליפול לפונט מערכת אקראי.
   ------------------------------------------------------------ */
@font-face{
  font-family:"FUP Elkanah";
  src:url("/fonts/fup-elkanah-300.woff2") format("woff2"),
      url("/fonts/fup-elkanah-300.woff") format("woff");
  font-weight:300; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"FUP Elkanah";
  src:url("/fonts/fup-elkanah-400.woff2") format("woff2"),
      url("/fonts/fup-elkanah-400.woff") format("woff");
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"FUP Elkanah";
  src:url("/fonts/fup-elkanah-500.woff2") format("woff2"),
      url("/fonts/fup-elkanah-500.woff") format("woff");
  font-weight:500; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"FUP Elkanah";
  src:url("/fonts/fup-elkanah-600.woff2") format("woff2"),
      url("/fonts/fup-elkanah-600.woff") format("woff");
  font-weight:600; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"FUP Elkanah";
  src:url("/fonts/fup-elkanah-700.woff2") format("woff2"),
      url("/fonts/fup-elkanah-700.woff") format("woff");
  font-weight:700; font-style:normal; font-display:swap;
}
/* הכי כבד שיש בחבילה. הקוד משתמש גם ב-900, והדפדפן ימפה אותו לכאן. */
@font-face{
  font-family:"FUP Elkanah";
  src:url("/fonts/fup-elkanah-800.woff2") format("woff2"),
      url("/fonts/fup-elkanah-800.woff") format("woff");
  font-weight:800 900; font-style:normal; font-display:swap;
}

:root{
  /* Brand palette */
  --orange:#EA6A2E;
  --orange-deep:#C9531E;
  --gold:#F4B740;
  --teal:#2E9E93;
  --ink:#241E1A;
  --cream:#FBF4EA;
  --sand:#F3E7D5;
  --card:#FFFFFF;
  --muted:#6B5F52;
  --line:#EADFCB;

  /* Typography */
  --display:"FUP Elkanah","Rubik",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --sans:"FUP Elkanah","Rubik",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;

  /* Spacing / radius / shadow */
  --sp-xs:.5rem; --sp-sm:.75rem; --sp-md:1rem; --sp-lg:1.5rem; --sp-xl:2.5rem; --sp-2xl:4rem;
  --r-sm:10px; --r-md:14px; --r-lg:20px; --r-pill:999px;
  --shadow-sm:0 2px 8px rgba(60,40,20,.08);
  --shadow-md:0 12px 32px rgba(60,40,20,.12);
  --shadow-cta:0 8px 20px rgba(234,106,46,.30);
  --maxw:1120px;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.001ms!important;transition-duration:.001ms!important}}

body{
  font-family:var(--sans);
  font-size:1rem;line-height:1.7;
  color:var(--ink);background:var(--cream);
  direction:rtl;text-align:right;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4{font-family:var(--display);font-weight:900;line-height:1.15;color:var(--ink)}
a{color:var(--orange-deep);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;height:auto;display:block}

.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 20px}
.section{padding:var(--sp-2xl) 0}

/* Accessibility */
.skip-link{position:absolute;top:-48px;right:0;background:var(--orange-deep);color:#fff;padding:.6rem 1rem;z-index:2000;border-radius:0 0 0 8px;transition:top .2s}
.skip-link:focus{top:0}
:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-radius:4px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;font-weight:700;font-size:1rem;padding:.85rem 1.6rem;border-radius:var(--r-pill);border:2px solid transparent;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s;text-decoration:none}
.btn:hover{text-decoration:none}
.btn-primary{background:var(--orange);color:#fff;box-shadow:var(--shadow-cta)}
.btn-primary:hover{background:var(--orange-deep);color:#fff}
.btn-ghost{background:var(--card);color:var(--ink);border-color:var(--line)}
.btn-ghost:hover{border-color:var(--orange);color:var(--orange-deep)}
.btn-lg{padding:1rem 1.8rem;font-size:1.05rem}

/* Image placeholder (עד סריקת תמונות ואישור) */
.img-ph{background:#F0E2CE;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#a08b6a;font-size:.78rem;font-weight:600;text-align:center;padding:1rem}
.img-ph svg{width:44px;height:44px;fill:#c9b48f}
/* real photos that fill their slot */
.ph-img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}
img.mid-image{width:100%;height:220px;object-fit:cover;border-radius:var(--r-md);margin:1.2rem 0;display:block}
.nl-visual .ph-img{border-radius:var(--r-md) var(--r-md) 0 0;min-height:200px}

/* ---------- Header ---------- */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(251,244,234,.92);backdrop-filter:saturate(140%) blur(6px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:.9rem 20px;max-width:var(--maxw);margin:0 auto;gap:1rem}
.logo{display:flex;align-items:center;gap:.55rem;font-family:var(--display);font-weight:900;font-size:1.5rem;color:var(--ink);text-decoration:none}
.logo .mark{width:34px;height:34px;border-radius:50%;background:var(--orange);display:flex;align-items:center;justify-content:center;flex:0 0 34px}
.logo .mark svg{width:20px;height:20px;fill:#fff}
.main-nav ul{display:flex;gap:1.4rem;list-style:none}
.main-nav a{color:var(--ink);font-weight:600;font-size:.98rem;text-decoration:none}
.main-nav a:hover,.main-nav a.active{color:var(--orange-deep)}
.header-cta{display:flex;align-items:center;gap:.6rem}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.hamburger span{width:24px;height:2px;background:var(--ink);border-radius:2px;transition:.2s}

.mobile-nav{position:fixed;inset:0 0 0 auto;width:min(78vw,320px);background:var(--cream);z-index:1500;transform:translateX(100%);transition:transform .25s ease;padding:5rem 1.5rem 2rem;box-shadow:var(--shadow-md)}
.mobile-nav.open{transform:translateX(0)}
.mobile-nav ul{list-style:none;display:flex;flex-direction:column;gap:.4rem}
.mobile-nav a{display:block;padding:.7rem .4rem;font-weight:700;font-size:1.1rem;color:var(--ink);border-bottom:1px solid var(--line);text-decoration:none}
.mobile-nav-overlay{position:fixed;inset:0;background:rgba(36,30,26,.4);z-index:1400;opacity:0;visibility:hidden;transition:.25s}
.mobile-nav-overlay.open{opacity:1;visibility:visible}

@media(max-width:820px){
  .main-nav{display:none}
  .header-cta .sub-btn{display:none}
  .hamburger{display:flex}
}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:1rem;align-items:center;padding:var(--sp-xl) 0}
.eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.85rem;font-weight:700;color:var(--teal);letter-spacing:.02em}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--teal)}
.hero h1{font-size:clamp(2.1rem,5vw,3rem);margin:.7rem 0 .3rem}
.hl{position:relative;color:var(--orange-deep);white-space:nowrap}
.hl svg{position:absolute;left:0;right:0;bottom:-10px;width:100%;height:14px;overflow:visible}
.hero p.lead{font-size:1.1rem;color:var(--muted);max-width:34ch;margin-top:1rem}
.hero-cta{margin-top:1.6rem;display:flex;gap:.75rem;flex-wrap:wrap}
.hero-stats{display:flex;margin-top:2rem}
.hero-stats .stat{padding:0 1.25rem;border-inline-start:1px solid var(--line)}
.hero-stats .stat:first-child{padding-inline-start:0;border-inline-start:0}
.hero-stats .num{font-family:var(--display);font-weight:900;font-size:1.5rem;color:var(--orange-deep);line-height:1.1}
.hero-stats .lbl{font-size:.78rem;color:var(--muted);font-weight:600}

.hero-visual{position:relative;min-height:380px;display:flex;align-items:flex-end;justify-content:center}
.hero-visual .blob{position:absolute;bottom:0;width:min(360px,90%);height:340px;background:var(--orange);border-radius:46% 54% 50% 50%/55% 55% 45% 45%}
.hero-visual .photo{position:relative;z-index:2;width:min(330px,88%);height:370px;border-radius:var(--r-lg)}
.hero-visual .badge{position:absolute;z-index:4;top:8px;inset-inline-start:6px;width:98px;height:98px;border-radius:50%;background:var(--gold);color:#4a3410;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:.8rem;line-height:1.2;transform:rotate(-8deg);box-shadow:var(--shadow-sm)}
.confetti{position:absolute;border-radius:50%;z-index:3}

@media(max-width:760px){.hero-grid{grid-template-columns:1fr}.hero-visual{min-height:320px;order:-1}}

/* Wave divider */
.wave{display:block;width:100%;height:56px;margin-bottom:-1px}

/* ---------- Breed finder ---------- */
.finder{background:var(--orange);color:#fff}
.finder .container{padding-top:var(--sp-xl);padding-bottom:var(--sp-xl)}
.finder h2{color:#fff;font-size:1.7rem}
.finder .sub{opacity:.94;margin:.3rem 0 1.4rem;max-width:56ch}
.finder-form{display:grid;grid-template-columns:repeat(3,1fr) auto;gap:.85rem;align-items:stretch}
.fstep{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.32);border-radius:var(--r-md);padding:.9rem}
.fstep legend{font-size:.78rem;font-weight:700;opacity:.9;padding:0}
.fstep .q{font-size:1rem;font-weight:700;margin:.15rem 0 .6rem}
.fstep .opts{display:flex;gap:.4rem;flex-wrap:wrap}
.fstep .opts label{background:rgba(255,255,255,.2);border-radius:var(--r-pill);padding:.3rem .8rem;font-size:.82rem;font-weight:600;cursor:pointer;transition:.15s}
.fstep .opts input{position:absolute;opacity:0;width:0;height:0}
.fstep .opts input:checked+span{color:var(--orange-deep)}
.fstep .opts label:has(input:checked){background:#fff}
.fstep .opts label:hover{background:rgba(255,255,255,.32)}
.finder-go{width:108px;height:108px;border-radius:50%;background:#fff;color:var(--orange-deep);border:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:800;font-size:.85rem;font-family:var(--sans);align-self:center;justify-self:center;transition:transform .15s}
.finder-go:hover{transform:scale(1.05)}
.finder-go svg{width:22px;height:22px;fill:var(--orange-deep);margin-top:3px}
.finder-result{margin-top:1.2rem;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.34);border-radius:var(--r-md);padding:1rem 1.2rem;display:none}
.finder-result.show{display:block}
.finder-result h3{color:#fff;font-size:1.15rem;margin-bottom:.4rem}
.finder-result .breeds{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}
.finder-result .breeds a{background:#fff;color:var(--orange-deep);font-weight:700;padding:.4rem 1rem;border-radius:var(--r-pill);font-size:.9rem}
.finder-result .breeds .soon{background:rgba(255,255,255,.2);color:#fff;font-weight:700;padding:.4rem 1rem;border-radius:var(--r-pill);font-size:.9rem;opacity:.9}
@media(max-width:760px){.finder-form{grid-template-columns:1fr}.finder-go{width:100%;height:auto;flex-direction:row;gap:.5rem;border-radius:var(--r-pill);padding:.9rem}}

/* ---------- Hub grid ---------- */
.hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.hub-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .18s,box-shadow .18s}
.hub-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);text-decoration:none}
.hub-card .hub-img{height:130px}
.hub-card .tag{position:absolute;top:.6rem;inset-inline-end:.6rem;background:#fff;color:var(--orange-deep);font-size:.78rem;font-weight:800;padding:.25rem .8rem;border-radius:var(--r-pill);box-shadow:var(--shadow-sm)}
.hub-card .tag.teal{color:var(--teal)}
.hub-card .hub-body{padding:.85rem 1rem}
.hub-card .hub-body h3{font-size:1.05rem;color:var(--orange-deep);margin-bottom:.2rem}
.hub-card .hub-body p{font-size:.85rem;color:var(--muted)}

/* Cluster tiles: a designed icon panel per world, one distinct colour and
   glyph each. Deliberate design, not a photo placeholder. Swap an individual
   tile for a real verified photo by replacing .hub-ico with an <img>. */
.hub-ico{height:130px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.hub-ico svg{width:54px;height:54px;position:relative;z-index:1;fill:currentColor}
.hub-ico::after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;inset-block-start:-58px;inset-inline-start:-48px;opacity:.55}
.hub-ico.c-breeds{background:#FBE9DC;color:#C9531E}      .hub-ico.c-breeds::after{background:#F6D6BE}
.hub-ico.c-training{background:#FCF0D6;color:#C8901A}  .hub-ico.c-training::after{background:#F7E3AE}
.hub-ico.c-nutrition{background:#F3E7D8;color:#A9762F}.hub-ico.c-nutrition::after{background:#EBD8BF}
.hub-ico.c-health{background:#DFF0EE;color:#22796F}      .hub-ico.c-health::after{background:#C4E4DF}
.hub-ico.c-puppies{background:#FCE7E2;color:#C0492F}    .hub-ico.c-puppies::after{background:#F7D2C8}
.hub-ico.c-gear{background:#E7EAF0;color:#4B5A76}          .hub-ico.c-gear::after{background:#D3D9E5}
.hub-ico.c-behavior{background:#E6EFE4;color:#4A7A44}  .hub-ico.c-behavior::after{background:#CFE2CB}
/* Article hero band for guides that have no verified photo yet. A designed
   brand panel, never a "photo pending" placeholder shown to real visitors.
   Replace the whole div with an <img> once a verified photo exists. */
.article-hero{height:220px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;margin-bottom:.4rem}
.article-hero svg{width:86px;height:86px;position:relative;z-index:1;fill:currentColor;opacity:.95}
.article-hero::after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;inset-block-start:-96px;inset-inline-start:-70px;opacity:.5}
.article-hero.c-breeds{background:#FBE9DC;color:#C9531E}   .article-hero.c-breeds::after{background:#F6D6BE}
.article-hero.c-training{background:#FCF0D6;color:#C8901A} .article-hero.c-training::after{background:#F7E3AE}
.article-hero.c-nutrition{background:#F3E7D8;color:#A9762F}.article-hero.c-nutrition::after{background:#EBD8BF}
.article-hero.c-health{background:#DFF0EE;color:#22796F}   .article-hero.c-health::after{background:#C4E4DF}
.article-hero.c-puppies{background:#FCE7E2;color:#C0492F}  .article-hero.c-puppies::after{background:#F7D2C8}
.article-hero.c-gear{background:#E7EAF0;color:#4B5A76}     .article-hero.c-gear::after{background:#D3D9E5}
.article-hero.c-behavior{background:#E6EFE4;color:#4A7A44} .article-hero.c-behavior::after{background:#CFE2CB}
@media(max-width:600px){.article-hero{height:170px}.article-hero svg{width:64px;height:64px}}

.hub-ico svg{transition:transform .18s}
.hub-card:hover .hub-ico svg{transform:scale(1.06)}

/* Featured-guide card with no image panel: the tag must flow above the title
   instead of floating over it, otherwise it overlaps the heading. */
.hub-card.hub-flat .tag{position:static;display:inline-block;margin:.9rem .9rem 0;background:var(--sand);box-shadow:none}
.hub-card.hub-flat .hub-body{padding-top:.5rem}

@media(max-width:760px){.hub-grid{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.hub-grid{grid-template-columns:1fr}}

/* ---------- Cover story ---------- */
.cover{background:var(--sand)}
.cover-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1.5rem;align-items:start}
.feature{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden}
.feature .feat-img{height:210px}
.feature .feat-body{padding:1.3rem 1.4rem}
.feature .kicker{font-size:.75rem;font-weight:800;letter-spacing:.08em;color:var(--teal)}
.feature h2{font-size:1.5rem;margin:.4rem 0}
.feature p{color:var(--muted)}
.most-read h2{font-size:1.2rem;margin-bottom:.8rem}
.most-read ol{list-style:none;counter-reset:mr}
.most-read li{counter-increment:mr;border-bottom:1px solid var(--line)}
.most-read a{display:flex;gap:.75rem;align-items:baseline;padding:.7rem 0;color:var(--ink);font-weight:600;text-decoration:none}
.most-read a:hover{color:var(--orange-deep)}
.most-read a::before{content:counter(mr);color:var(--orange);font-family:var(--display);font-weight:900;font-size:1.15rem;min-width:1.1rem}
@media(max-width:760px){.cover-grid{grid-template-columns:1fr}}

/* ---------- Trust band ---------- */

/* ---------- FAQ (AEO) ---------- */
.faq h2{font-size:1.7rem;margin-bottom:1rem}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:.7rem;overflow:hidden}
.faq summary{padding:1rem 1.2rem;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.4rem;color:var(--orange);font-weight:400}
.faq details[open] summary::after{content:"\2013"}
.faq details[open] summary{color:var(--orange-deep)}
.faq .faq-a{padding:0 1.2rem 1.1rem;color:var(--muted)}
.home-disclaimer{margin-top:1.2rem;font-size:.85rem;color:var(--muted)}

/* ---------- Article sources ---------- */
.article-sources{margin:2rem 0 0;padding:1.3rem 1.4rem;background:var(--sand);border:1px solid var(--line);border-radius:var(--r-md)}
.article-sources h2{font-size:1.15rem;margin:0 0 .4rem}
.article-sources p.src-intro{color:var(--muted);font-size:.9rem;margin:0 0 .8rem}
.article-sources ul{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}
.article-sources li{font-size:.95rem;line-height:1.5}
.article-sources a{color:var(--orange-deep);font-weight:700}
.article-sources .src-note{color:var(--muted);font-weight:400}

/* ---------- Newsletter ---------- */
.newsletter{background:var(--orange);color:#fff}
.nl-grid{display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:end}
.newsletter h2{color:#fff;font-size:1.7rem}
.newsletter p{opacity:.94;margin:.4rem 0 1rem}
.nl-form{display:flex;gap:.5rem;background:#fff;border-radius:var(--r-pill);padding:.35rem;max-width:420px}
.nl-form input{flex:1;border:0;background:transparent;padding:.6rem 1rem;font-size:1rem;font-family:var(--sans);color:var(--ink);min-width:0}
.nl-form input:focus{outline:0}
.nl-form button{background:var(--orange-deep);color:#fff;border:0;font-weight:700;padding:.6rem 1.4rem;border-radius:var(--r-pill);cursor:pointer;font-family:var(--sans)}
.nl-visual{width:200px;height:160px;align-self:end}
.nl-visual .img-ph{height:100%;background:rgba(255,255,255,.16);border:2px dashed rgba(255,255,255,.5);border-radius:var(--r-md) var(--r-md) 0 0;color:#fff}
.nl-visual .img-ph svg{fill:rgba(255,255,255,.85)}
@media(max-width:760px){.nl-grid{grid-template-columns:1fr}.nl-visual{display:none}}

/* ---------- Footer ---------- */
.site-footer{background:#201b17;color:#b9ad9c;padding:var(--sp-xl) 0 1.5rem}
.footer-inner{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:1.5rem}
.footer-brand .logo{color:#fff}
.footer-brand p{font-size:.9rem;margin-top:.6rem;max-width:32ch}
.footer-col h3{color:#f3ece0;font-size:1rem;margin-bottom:.7rem;font-family:var(--sans);font-weight:700}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.45rem}
.footer-col a{color:#b9ad9c;font-size:.9rem;text-decoration:none}
.footer-col a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:1.6rem;padding-top:1rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;font-size:.82rem}
.footer-bottom a{color:#b9ad9c}
@media(max-width:760px){.footer-inner{grid-template-columns:1fr 1fr}}
@media(max-width:460px){.footer-inner{grid-template-columns:1fr}}

/* ============================================================
   Article / Hub / Trust pages
   ============================================================ */

/* Page header (hub + article) */
.page-header{background:var(--sand);padding:2.2rem 0}
.page-header h1{font-size:clamp(1.7rem,4vw,2.4rem)}
.page-header p{color:var(--muted);margin-top:.5rem;max-width:60ch}

.breadcrumbs{padding:.9rem 0}
.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;font-size:.85rem;color:var(--muted)}
.breadcrumbs li:not(:last-child)::after{content:"/";margin-inline-start:.4rem;color:var(--line)}
.breadcrumbs a{color:var(--muted)}
.breadcrumbs .current{color:var(--orange-deep);font-weight:700}

/* Content layout: article + sidebar */
.content-layout{display:grid;grid-template-columns:1fr 300px;gap:2.5rem;align-items:start}
@media(max-width:900px){.content-layout{grid-template-columns:1fr}}

.content-main{max-width:70ch}
.content-meta{font-size:.85rem;color:var(--muted);margin-bottom:1.4rem;padding-bottom:1rem;border-bottom:1px solid var(--line)}
.content-hero-image-wrapper{margin-bottom:1.4rem}
.content-hero-image{width:100%;border-radius:var(--r-md)}
.content-main h2{font-size:1.5rem;margin:1.8rem 0 .8rem}
.content-main h3{font-size:1.2rem;margin:1.3rem 0 .6rem}
.content-main p{margin-bottom:1rem}
.content-main ul,.content-main ol{margin:0 0 1rem 0;padding-inline-start:1.4rem}
.content-main li{margin-bottom:.4rem}

/* Tip box */
.tip-box{background:var(--sand);border-inline-start:4px solid var(--orange);border-radius:var(--r-sm);padding:1rem 1.2rem;margin:1.3rem 0}
.tip-box strong{color:var(--orange-deep);display:block;margin-bottom:.3rem}
.tip-box.vet{border-inline-start-color:var(--teal);background:#EAF4F2}
.tip-box.vet strong{color:var(--teal)}

/* Table of contents */
.toc{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:1.1rem 1.3rem;margin-bottom:1.4rem}
.toc h3{font-size:1rem;margin-bottom:.6rem;font-family:var(--sans);font-weight:700}
.toc ol{list-style:decimal;padding-inline-start:1.3rem;font-size:.92rem}
.toc li{margin-bottom:.35rem}
.toc a{color:var(--ink);font-weight:600}
.toc a:hover{color:var(--orange-deep)}

/* Content table */
.content-main table{width:100%;border-collapse:collapse;margin:1.4rem 0;font-size:.92rem}
.content-main th{background:var(--orange);color:#fff;padding:.7rem;text-align:right;border:1px solid var(--line)}
.content-main td{padding:.7rem;border:1px solid var(--line)}
.content-main tr:nth-child(even) td{background:var(--sand)}

/* Mid-article image */
.content-main img.mid-image{width:100%;border-radius:var(--r-md);margin:1.4rem 0}

/* Article FAQ */
.article-faq{margin:1.6rem 0}
.article-faq h2{font-size:1.3rem;margin-bottom:.8rem}

/* Author box */
.author-box{display:flex;gap:1rem;background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:1.1rem 1.3rem;margin:1.6rem 0}
.author-avatar{width:52px;height:52px;border-radius:50%;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem;flex:0 0 52px}
.author-info h3{font-family:var(--sans);font-weight:700;font-size:1rem;margin-bottom:.3rem}
.author-info p{font-size:.88rem;color:var(--muted);margin:0}
.author-info .review-line{font-size:.8rem;color:var(--teal);font-weight:700;margin-top:.4rem}
.author-info a{color:var(--orange-deep)}

/* Disclaimer */
.disclaimer{font-size:.82rem;color:var(--muted);background:var(--sand);border-radius:var(--r-sm);padding:.8rem 1rem;margin:1rem 0}

/* Related articles */
.related-articles{margin:1.8rem 0}
.related-articles h2{font-size:1.2rem;margin-bottom:.8rem}
.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.related-grid .card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:1rem 1.1rem;text-decoration:none;color:var(--ink);display:block;transition:box-shadow .18s,transform .18s}
.related-grid .card:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px);text-decoration:none}
.related-grid .card h3{font-size:1rem;color:var(--orange-deep);margin-bottom:.3rem}
.related-grid .card p{font-size:.85rem;color:var(--muted)}
.card-link{font-size:.82rem;font-weight:700;color:var(--orange-deep)}
@media(max-width:520px){.related-grid{grid-template-columns:1fr}}

/* Sidebar */
.sidebar{display:flex;flex-direction:column;gap:1.2rem;position:sticky;top:80px}
.sidebar-widget{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:1.1rem 1.2rem}
.sidebar-widget h3{font-family:var(--sans);font-weight:700;font-size:.95rem;margin-bottom:.7rem}
.sidebar-widget ul{list-style:none;display:flex;flex-direction:column;gap:.5rem}
.sidebar-widget a{font-size:.88rem;color:var(--ink)}
.sidebar-widget a:hover{color:var(--orange-deep)}
.sidebar-nl{background:var(--orange);color:#fff}
.sidebar-nl h3{color:#fff}
.sidebar-nl p{font-size:.85rem;opacity:.92;margin-bottom:.8rem}
.sidebar-nl input{width:100%;border:0;border-radius:var(--r-pill);padding:.6rem .9rem;margin-bottom:.5rem;font-family:var(--sans)}
.sidebar-nl button{width:100%;background:var(--orange-deep);color:#fff;border:0;border-radius:var(--r-pill);padding:.6rem;font-weight:700;cursor:pointer;font-family:var(--sans)}

/* CTA gradient band (used at end of articles) */
.cta-band{background:linear-gradient(135deg,var(--orange) 0%,var(--orange-deep) 100%);color:#fff;text-align:center;border-radius:var(--r-lg);padding:2.2rem 1.5rem;margin:2rem 0}
.cta-band h2{color:#fff;font-size:1.5rem}
.cta-band p{color:rgba(255,255,255,.9);max-width:50ch;margin:.6rem auto 1.2rem}

/* Hub grid (category listing pages) reuse .hub-grid; breed grid variant */
.breed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
@media(max-width:820px){.breed-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.breed-grid{grid-template-columns:1fr}}
.breed-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .18s,box-shadow .18s}
.breed-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);text-decoration:none}
.breed-card .b-img{height:150px}
.breed-card .b-body{padding:.9rem 1rem}
.breed-card h3{font-size:1.05rem;color:var(--orange-deep)}
.breed-card p{font-size:.85rem;color:var(--muted);margin-top:.2rem}

/* Simple content page (about/policy/contact) */
.simple-page{max-width:70ch}
.simple-page h2{font-size:1.3rem;margin:1.6rem 0 .6rem}
.simple-page p{margin-bottom:1rem}
.simple-page ul{padding-inline-start:1.4rem;margin-bottom:1rem}
.simple-page li{margin-bottom:.4rem}
.trust-badges{display:flex;flex-wrap:wrap;gap:.7rem;margin:1.2rem 0}
.trust-badges span{background:var(--sand);border-radius:var(--r-pill);padding:.5rem 1rem;font-size:.85rem;font-weight:600;color:var(--orange-deep)}

/* Contact form */
.contact-form{display:flex;flex-direction:column;gap:1rem;max-width:480px;margin-top:1rem}
.contact-form label{font-weight:700;font-size:.9rem;margin-bottom:.3rem;display:block}
.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-sm);padding:.7rem .9rem;font-family:var(--sans);font-size:1rem;background:var(--card)}
.contact-form textarea{min-height:120px;resize:vertical}
.contact-form button{align-self:flex-start}
