/* DogBowWow 4.0 - homepage, article components, consent banner. All selectors are namespaced .dbw-* */
.dbw-site,.dbw-art-scope{--dbw-forest:#1f4a3a;--dbw-forest-2:#2f6b54;--dbw-forest-3:#e3efe7;--dbw-cream:#fbf7ef;--dbw-sand:#f2e9d8;--dbw-clay:#c0723a;--dbw-ink:#24312c;--dbw-muted:#5d6b64;--dbw-line:#e3dccb;--dbw-card:#fff;--dbw-serif:Georgia,"Iowan Old Style","Palatino Linotype",Palatino,serif;--dbw-radius:18px}
.dbw-site{color:var(--dbw-ink);font-size:17px;line-height:1.65;overflow-x:hidden}
.dbw-site *,.dbw-site *::before,.dbw-site *::after{box-sizing:border-box}
.dbw-site a{text-decoration:none;color:inherit}
.dbw-site img{max-width:100%;height:auto;display:block}
.dbw-site ul{list-style:none;margin:0;padding:0}
.dbw-site h1,.dbw-site h2,.dbw-site h3{font-family:var(--dbw-serif);color:var(--dbw-forest);letter-spacing:-.01em;margin:0}
.dbw-site p{margin:0 0 1em}
.dbw-wrap{width:100%;max-width:1180px;margin:0 auto;padding:0 clamp(1rem,4vw,2rem)}
.dbw-ico{display:block;flex:none}
.screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;white-space:nowrap}

/* buttons + type helpers */
.dbw-kicker{display:inline-block;font:700 .74rem/1 system-ui,-apple-system,Segoe UI,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--dbw-clay);margin-bottom:.9rem}
.dbw-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.5rem;border-radius:999px;font:700 .98rem/1 system-ui,-apple-system,Segoe UI,sans-serif;border:2px solid var(--dbw-forest);transition:transform .15s,background .15s,color .15s,box-shadow .15s}
.dbw-btn:hover{transform:translateY(-2px)}
.dbw-btn:focus-visible,.dbw-site a:focus-visible{outline:3px solid #f2b66b;outline-offset:3px}
.dbw-btn-primary{background:var(--dbw-forest);color:#fff!important;box-shadow:0 8px 20px -10px rgba(31,74,58,.7)}
.dbw-btn-primary:hover{background:var(--dbw-forest-2);border-color:var(--dbw-forest-2)}
.dbw-btn-ghost{background:transparent;color:var(--dbw-forest)!important}
.dbw-btn-ghost:hover{background:var(--dbw-forest);color:#fff!important}
.dbw-more{display:inline-flex;align-items:center;gap:.35rem;margin-top:auto;font:700 .88rem/1 system-ui,sans-serif;color:var(--dbw-forest-2)}
.dbw-more .dbw-ico{width:16px;height:16px;transition:transform .15s}
a:hover>.dbw-cat-body .dbw-more .dbw-ico,a:hover>.dbw-more .dbw-ico,a.dbw-guide:hover .dbw-more .dbw-ico{transform:translateX(4px)}
.dbw-pill{display:inline-block;align-self:flex-start;padding:.28rem .7rem;border-radius:999px;background:var(--dbw-forest-3);color:var(--dbw-forest);font:700 .72rem/1.2 system-ui,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.dbw-pill-link{margin:0 .4rem .5rem 0;text-transform:none;font-size:.85rem;letter-spacing:0;padding:.5rem .95rem}
.dbw-pill-link:hover{background:var(--dbw-forest);color:#fff}
.dbw-disclose{font-size:.9rem;color:var(--dbw-muted)}
.dbw-link{font-weight:700;color:var(--dbw-forest-2)!important;border-bottom:2px solid #cfe1d6;padding-bottom:1px}

/* hero */
.dbw-hero{background:linear-gradient(135deg,#f6efdf 0%,#e8f1e8 100%);padding:clamp(2.5rem,6vw,5.5rem) 0;position:relative}
.dbw-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}
.dbw-hero h1{font-size:clamp(2.2rem,4.6vw,3.9rem);line-height:1.08;margin:0 0 1.2rem}
.dbw-lead{font-size:1.15rem;color:#33443d;max-width:34rem}
.dbw-cta{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.dbw-hero-art{position:relative;min-height:340px}
.dbw-hero-art.has-photo img{width:100%;height:100%;min-height:340px;max-height:520px;object-fit:cover;border-radius:28px;box-shadow:0 30px 60px -30px rgba(31,74,58,.55)}
.dbw-hero-fallback{position:relative;height:100%;min-height:360px;border-radius:28px;background:linear-gradient(160deg,#dcead9,#f4e6c8);overflow:hidden;box-shadow:0 30px 60px -30px rgba(31,74,58,.45)}
.dbw-blob{position:absolute;border-radius:50%}
.dbw-blob-a{width:300px;height:300px;right:-60px;top:-70px;background:rgba(255,255,255,.55)}
.dbw-blob-b{width:220px;height:220px;left:-50px;bottom:-60px;background:rgba(192,114,58,.18)}
.dbw-hero-paw{position:absolute;inset:0;display:grid;place-items:center;color:var(--dbw-forest);opacity:.9}
.dbw-hero-paw .dbw-ico{width:140px;height:140px;stroke-width:1.1}
.dbw-hero-ico{position:absolute;width:74px;height:74px;border-radius:20px;background:#fff;display:grid;place-items:center;color:var(--dbw-forest-2);box-shadow:0 14px 28px -14px rgba(31,74,58,.5)}
.dbw-hero-ico .dbw-ico{width:36px;height:36px}
.dbw-hero-ico-1{left:9%;top:12%;transform:rotate(-6deg)}
.dbw-hero-ico-2{right:10%;top:36%;transform:rotate(5deg)}
.dbw-hero-ico-3{right:24%;top:9%;transform:rotate(4deg)}
.dbw-hero-chip{position:absolute;left:-14px;bottom:26px;display:flex;gap:.7rem;align-items:center;background:#fff;color:var(--dbw-forest);padding:.8rem 1.1rem;border-radius:16px;box-shadow:0 18px 34px -18px rgba(0,0,0,.4);font:600 .85rem/1.35 system-ui,sans-serif}
.dbw-hero-chip .dbw-ico{width:26px;height:26px;color:var(--dbw-clay)}

/* trust strip */
.dbw-trust{background:var(--dbw-forest);color:#eaf2ec}
.dbw-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-top:1.8rem;padding-bottom:1.8rem}
.dbw-trust-grid>div{display:grid;grid-template-columns:34px 1fr;column-gap:.9rem;align-items:start}
.dbw-trust-grid .dbw-ico{grid-row:1/3;width:30px;height:30px;color:#f2c58f}
.dbw-trust h3{color:#fff!important;font:700 1rem/1.3 system-ui,sans-serif!important;margin:0 0 .15rem!important}
.dbw-trust p{margin:0;font-size:.92rem;color:#cfe0d4}

/* sections */
.dbw-sec{padding:clamp(3rem,6vw,5.5rem) 0}
.dbw-sec-warm{background:var(--dbw-cream)}
.dbw-head{max-width:46rem;margin-bottom:2rem}
.dbw-head h2{font-size:clamp(1.9rem,3.4vw,2.7rem);line-height:1.15;margin-bottom:.8rem}
.dbw-head p{color:var(--dbw-muted)}

/* category cards */
.dbw-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.dbw-cat{display:flex;flex-direction:column;height:100%;background:var(--dbw-card);border:1px solid var(--dbw-line);border-radius:var(--dbw-radius);overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s}
a.dbw-cat:hover{transform:translateY(-5px);box-shadow:0 22px 40px -24px rgba(31,74,58,.55);border-color:#c9dccd}
.dbw-cat-media{display:grid;place-items:center;height:128px;background:linear-gradient(140deg,var(--dbw-forest-3),#f6ecd6);color:var(--dbw-forest)}
.dbw-cat-media .dbw-ico{width:50px;height:50px}
.dbw-cat-media.has-img{padding:0}
.dbw-cat-media img{width:100%;height:100%;object-fit:cover}
.dbw-cat-body{display:flex;flex-direction:column;gap:.45rem;padding:1.15rem 1.25rem 1.3rem;flex:1}
.dbw-cat-name{font:700 1.2rem/1.25 var(--dbw-serif);color:var(--dbw-forest)}
.dbw-cat-blurb{font-size:.93rem;color:var(--dbw-muted);line-height:1.5}

/* decision guides */
.dbw-guides{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dbw-guide{display:flex;flex-direction:column;gap:.7rem;height:100%;padding:1.5rem;background:#fff;border:1px solid var(--dbw-line);border-radius:var(--dbw-radius);border-top:4px solid var(--dbw-clay);transition:transform .2s,box-shadow .2s}
a.dbw-guide:hover{transform:translateY(-4px);box-shadow:0 22px 40px -26px rgba(0,0,0,.45)}
.dbw-guide-title{font:700 1.2rem/1.3 var(--dbw-serif);color:var(--dbw-forest)}
.dbw-guide-desc{font-size:.95rem;color:var(--dbw-muted);line-height:1.5}

/* dog products */
.dbw-sec-products{background:linear-gradient(180deg,#fff,#f4f8f4)}
.dbw-products{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.dbw-product{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;height:100%;padding:1.2rem;background:#fff;border:1px solid var(--dbw-line);border-radius:16px;transition:transform .2s,box-shadow .2s,border-color .2s}
.dbw-product:hover{transform:translateY(-4px);box-shadow:0 18px 34px -22px rgba(31,74,58,.6);border-color:var(--dbw-clay)}
.dbw-product-ico{display:grid;place-items:center;width:54px;height:54px;border-radius:14px;background:var(--dbw-sand);color:var(--dbw-forest);overflow:hidden}
.dbw-product-ico.has-img{width:100%;height:110px;border-radius:12px}
.dbw-product-ico.has-img img{width:100%;height:100%;object-fit:cover}
.dbw-product-name{font:700 1.08rem/1.3 var(--dbw-serif);color:var(--dbw-forest)}
.dbw-product-go{margin-top:auto;font:700 .84rem/1 system-ui,sans-serif;color:var(--dbw-clay)}

/* dilemmas */
.dbw-dilemmas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.dbw-dilemma{display:flex;align-items:center;gap:1rem;height:100%;padding:1.15rem 1.3rem;background:#fff;border:1px solid var(--dbw-line);border-radius:16px;transition:transform .2s,box-shadow .2s}
a.dbw-dilemma:hover{transform:translateY(-3px);box-shadow:0 16px 30px -22px rgba(0,0,0,.5)}
.dbw-dilemma-ico{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:var(--dbw-forest-3);color:var(--dbw-forest)}
.dbw-dilemma-ico .dbw-ico{width:24px;height:24px}
.dbw-dilemma-text{font:700 1.02rem/1.35 var(--dbw-serif);color:var(--dbw-forest);flex:1}
.dbw-dilemma-go .dbw-ico{width:20px;height:20px;color:var(--dbw-clay)}

/* latest posts */
.dbw-latest{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.dbw-post{display:flex;flex-direction:column;height:100%;background:#fff;border:1px solid var(--dbw-line);border-radius:var(--dbw-radius);overflow:hidden;transition:transform .2s,box-shadow .2s}
.dbw-post:hover{transform:translateY(-4px);box-shadow:0 22px 40px -26px rgba(0,0,0,.45)}
.dbw-post-img{display:grid;place-items:center;aspect-ratio:1200/630;background:var(--dbw-forest-3);color:var(--dbw-forest);overflow:hidden}
.dbw-post-img img{width:100%;height:100%;object-fit:cover}
.dbw-post-body{display:flex;flex-direction:column;gap:.55rem;padding:1.2rem 1.3rem 1.4rem}
.dbw-post-title{font:700 1.18rem/1.3 var(--dbw-serif);color:var(--dbw-forest)}
.dbw-post-excerpt{font-size:.93rem;color:var(--dbw-muted);line-height:1.5}
.dbw-empty{padding:1.6rem 1.8rem;border:2px dashed #cfdccf;border-radius:var(--dbw-radius);background:#fafcf9;color:var(--dbw-muted)}

/* about */
.dbw-about{background:linear-gradient(135deg,#eaf2ea,#f6efdf)}
.dbw-about-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(1.5rem,4vw,4rem);align-items:center}
.dbw-about h2{font-size:clamp(1.9rem,3.2vw,2.5rem);margin-bottom:1rem}
.dbw-about-links{display:flex;flex-wrap:wrap;gap:1.2rem;align-items:center;margin-top:1.4rem}
.dbw-checks{display:grid;gap:.9rem}
.dbw-checks li{display:flex;gap:.8rem;align-items:flex-start;background:#fff;border-radius:14px;padding:1rem 1.15rem;box-shadow:0 10px 24px -20px rgba(0,0,0,.5);font-weight:600;color:var(--dbw-forest)}
.dbw-checks .dbw-ico{width:22px;height:22px;color:var(--dbw-clay);margin-top:2px}

@media (max-width:1020px){
	.dbw-cats,.dbw-products{grid-template-columns:repeat(3,1fr)}
	.dbw-guides,.dbw-dilemmas,.dbw-latest{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:760px){
	.dbw-hero-grid,.dbw-about-grid{grid-template-columns:1fr}
	.dbw-hero-art{min-height:260px}
	.dbw-hero-fallback{min-height:280px}
	.dbw-hero-chip{left:10px}
	.dbw-trust-grid{grid-template-columns:1fr;gap:1rem}
	.dbw-cats,.dbw-products{grid-template-columns:repeat(2,1fr);gap:12px}
	.dbw-guides,.dbw-dilemmas,.dbw-latest{grid-template-columns:1fr}
}
@media (max-width:440px){
	.dbw-cats,.dbw-products{grid-template-columns:1fr}
	.dbw-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.dbw-site *{transition:none!important}}

/* ======================= article components ======================= */
.dbw-crumbs{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;font:600 .85rem/1.4 system-ui,sans-serif;color:#6a7770;margin:0 0 1rem}
.dbw-crumbs a{color:var(--dbw-forest-2,#2f6b54);text-decoration:none}
.dbw-crumbs a:hover{text-decoration:underline}
.dbw-notice{background:#f8f3e6;border-left:4px solid #c0723a;padding:.75rem 1rem;border-radius:6px;font-size:.88rem;line-height:1.5;color:#3d4a44;margin:0 0 1.5rem}
.dbw-quick{background:#eaf3ec;border:1px solid #cfe2d4;border-left:6px solid #1f4a3a;border-radius:12px;padding:1.1rem 1.3rem;margin:1.6rem 0}
.dbw-quick-label,.dbw-toc-title,.dbw-shop-title,.dbw-callout-label{font:800 .74rem/1.2 system-ui,sans-serif!important;letter-spacing:.14em;text-transform:uppercase;color:#1f4a3a;margin:0 0 .5rem!important}
.dbw-quick p:last-child{margin:0;font-size:1.05rem;line-height:1.6}
.dbw-toc{background:#fbf7ef;border:1px solid #e3dccb;border-radius:12px;padding:1.1rem 1.4rem;margin:1.6rem 0 2rem}
.dbw-toc ol{margin:0;padding-left:1.25rem;columns:2;column-gap:2rem}
.dbw-toc li{margin:.25rem 0;break-inside:avoid;line-height:1.4}
.dbw-toc a{text-decoration:none;color:#24312c}
.dbw-toc a:hover{color:#2f6b54;text-decoration:underline}
@media(max-width:640px){.dbw-toc ol{columns:1}}
.dbw-table-wrap{overflow-x:auto;margin:1.5rem 0;border:1px solid #e3dccb;border-radius:12px;-webkit-overflow-scrolling:touch}
.dbw-table-wrap table{width:100%;min-width:560px;border-collapse:collapse;font-size:.95rem;margin:0}
.dbw-table-wrap th{background:#1f4a3a;color:#fff;text-align:left;padding:.7rem .9rem;font-weight:700;border:0}
.dbw-table-wrap td{padding:.7rem .9rem;border:0;border-top:1px solid #ece5d4;vertical-align:top;line-height:1.5}
.dbw-table-wrap tbody tr:nth-child(even) td{background:#fbf8f1}
.dbw-table-wrap td:first-child{font-weight:700;color:#1f4a3a}
.dbw-proscons{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:1.6rem 0}
.dbw-proscons>div{border-radius:12px;padding:1rem 1.2rem}
.dbw-pros{background:#eaf5ee;border:1px solid #c9e2d1}
.dbw-cons{background:#fbefe6;border:1px solid #efd3bd}
.dbw-proscons h4{margin:0 0 .5rem!important;font:800 .78rem/1.2 system-ui,sans-serif!important;letter-spacing:.12em;text-transform:uppercase}
.dbw-pros h4{color:#1a6b3f}.dbw-cons h4{color:#a24f15}
.dbw-proscons ul{margin:0!important;padding-left:1.1rem!important}
.dbw-proscons li{margin:.35rem 0;line-height:1.5}
@media(max-width:640px){.dbw-proscons{grid-template-columns:1fr}}
.dbw-callout{border-radius:12px;padding:1rem 1.25rem;margin:1.6rem 0}
.dbw-callout p:last-child{margin-bottom:0}
.dbw-tip{background:#f0f6fb;border:1px solid #cfe0ef}
.dbw-warning{background:#fdf3e3;border:1px solid #f0d49e}
.dbw-shop{background:linear-gradient(135deg,#fff8ec,#fbf2dd);border:1px solid #ecd9ae;border-radius:14px;padding:1.2rem 1.4rem;margin:2rem 0}
.dbw-shop ul{list-style:none;margin:0 0 .8rem!important;padding:0!important;display:flex;flex-wrap:wrap;gap:.6rem}
.dbw-shop li{margin:0}
.dbw-shop li a{display:inline-block;background:#1f4a3a;color:#fff!important;text-decoration:none!important;padding:.55rem 1rem;border-radius:999px;font:700 .88rem/1.2 system-ui,sans-serif}
.dbw-shop li a:hover{background:#2f6b54}
.dbw-shop-note{font-size:.8rem!important;color:#6a6252;margin:0!important;line-height:1.5}
.dbw-takeaways{background:#1f4a3a;color:#eaf2ec;border-radius:14px;padding:1.3rem 1.6rem;margin:2.2rem 0}
.dbw-takeaways h2{color:#fff!important;margin-top:0!important;font-size:1.35rem!important}
.dbw-takeaways ul{margin:.6rem 0 0!important;padding-left:1.2rem!important}
.dbw-takeaways li{margin:.45rem 0;line-height:1.55}
.dbw-faq h3{font-size:1.08rem;margin:1.5rem 0 .4rem;color:#1f4a3a}
.dbw-faq p{margin:0 0 .8rem}
.dbw-related{border-top:2px solid #e3dccb;margin-top:2.5rem;padding-top:1.2rem}
.dbw-related-title{font-size:1.2rem!important;margin:0 0 .6rem!important}
.dbw-related ul{margin:0!important;padding-left:1.2rem!important}
.dbw-related li{margin:.35rem 0}

/* contact form */
.dbw-contact{max-width:680px}
.dbw-contact label{display:block;font-weight:600}
.dbw-contact input,.dbw-contact textarea{display:block;width:100%;box-sizing:border-box;padding:12px;margin-top:6px;border:1px solid #bdc9c6;border-radius:8px;font:inherit}
.dbw-contact button{background:#1f4a3a;color:#fff;padding:12px 24px;border:0;border-radius:8px;cursor:pointer;font-weight:700}
.dbw-honeypot{position:absolute!important;left:-9999px!important}

/* ads + consent */
.dbw-ad{display:none;margin:2.5rem auto;max-width:100%;min-height:100px;clear:both;text-align:center}
html.dbw-ads-on .dbw-ad{display:block}
.dbw-ad-label{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#6a7770;margin-bottom:8px}
#dbw-consent{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);width:min(760px,calc(100% - 24px));z-index:99999;background:#fff;color:#24312c;border:1px solid #d8d0bb;border-radius:14px;box-shadow:0 20px 50px -12px rgba(0,0,0,.4);padding:1rem 1.2rem;display:flex;gap:1rem;align-items:center;flex-wrap:wrap;font:400 .9rem/1.5 system-ui,-apple-system,Segoe UI,sans-serif}
#dbw-consent p{margin:0;flex:1 1 320px}
#dbw-consent a{color:#2f6b54;font-weight:700}
.dbw-consent-btns{display:flex;gap:.6rem}
#dbw-consent button{padding:.65rem 1.3rem;border-radius:999px;font:700 .9rem/1 system-ui,sans-serif;cursor:pointer;border:2px solid #1f4a3a}
.dbw-consent-accept{background:#1f4a3a;color:#fff}
.dbw-consent-decline{background:#fff;color:#1f4a3a}
