:root{--bg: #f3eee6;--bg-elevated: #faf6ef;--card: #fffefb;--border: #e0d7ca;--text: #1a1512;--muted: #5c5349;--muted-faint: #8f8578;--accent: #0ab5a3;--accent-dark: #078c7d;--accent-ink: #045a52;--accent-soft: #c5f5ee;--accent-soft-mid: #7ee8d8;--accent-glow: #d2faf4;--coral: #f97356;--coral-deep: #ea580c;--coral-soft: #ffe8e1;--coral-glow: #fff0eb;--sky: #38bdf8;--sky-deep: #0284c7;--sky-soft: #dff4fc;--sky-glow: #e8f7fe;--violet: #a855f7;--violet-deep: #7e22ce;--violet-soft: #f1e8ff;--sun: #fbbf24;--sun-deep: #d97706;--sun-soft: #fff7d6;--pillar-food: #f59e0b;--pillar-food-bg: #fff7e8;--pillar-hydration: #0ea5e9;--pillar-hydration-bg: #e0f4ff;--pillar-housing: #22c55e;--pillar-housing-bg: #e8fce9;--pillar-travel: #8b5cf6;--pillar-travel-bg: #f3e8ff;--shadow-color: 45 35 28;--shadow-sm: 0 1px 3px rgb(var(--shadow-color) / .08);--shadow-md: var(--shadow-sm), 0 8px 28px rgb(var(--shadow-color) / .1);--shadow-glow-teal: 0 8px 32px rgb(10 181 163 / .22);--shadow-glow-warm: 0 8px 28px rgb(249 115 86 / .2);--max: 42rem;--wide: 72rem}*,*:before,*:after{box-sizing:border-box}html{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:var(--text);background-color:var(--bg);background-image:radial-gradient(ellipse 85% 55% at 100% 0%,rgb(255 200 170 / .35) 0%,transparent 52%),radial-gradient(ellipse 70% 45% at 0% 20%,rgb(120 230 210 / .28) 0%,transparent 48%),radial-gradient(ellipse 60% 40% at 85% 75%,rgb(200 180 255 / .22) 0%,transparent 45%);background-attachment:fixed}body{margin:0;min-height:100vh}a{color:var(--accent-ink);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--accent)}.wrap{width:min(100% - 2rem,var(--wide));margin-inline:auto}.prose{max-width:var(--max)}.prose h2{margin-top:2rem;font-size:1.25rem}.prose p{margin:.75rem 0}.site-header{position:relative;background:linear-gradient(180deg,#fffefcf7,#fffaf5eb);border-bottom:1px solid var(--border);box-shadow:0 1px rgb(var(--shadow-color) / .04);backdrop-filter:blur(10px)}.site-header:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--coral) 0%,var(--sun) 18%,var(--accent) 42%,var(--sky) 68%,var(--violet) 100%);opacity:.92}.site-header .inner{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:1rem;padding:1rem 0}.brand{font-weight:700;font-size:1.15rem;letter-spacing:-.02em}.brand a{color:transparent;text-decoration:none;background:linear-gradient(115deg,var(--accent-ink) 0%,var(--accent) 42%,var(--coral-deep) 100%);-webkit-background-clip:text;background-clip:text}.brand small{display:block;font-weight:400;font-size:.8rem;color:var(--muted)}nav ul{display:flex;flex-wrap:wrap;gap:1rem;list-style:none;margin:0;padding:0}nav a{font-weight:500;text-decoration:none;color:var(--text)}nav a:hover{color:var(--accent-ink);text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px}main{padding:2rem 0 3rem}.site-footer{border-top:1px solid var(--border);background:linear-gradient(180deg,var(--bg) 0%,var(--bg-elevated) 100%);padding:2rem 0;font-size:.9rem;color:var(--muted)}.site-footer a{color:var(--accent-dark)}.site-footer a:hover{color:var(--accent)}.site-footer ul{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;list-style:none;margin:0 0 1rem;padding:0}.card-list{display:grid;gap:1rem;margin:1.5rem 0}@media (min-width: 640px){.card-list.cols-2{grid-template-columns:repeat(2,1fr)}}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:1rem 1.25rem}.card h2,.card h3{margin:0 0 .35rem;font-size:1.05rem}.card p{margin:0;font-size:.95rem;color:var(--muted)}.meta{font-size:.85rem;color:var(--muted)}.badge{display:inline-block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--accent-ink);background:linear-gradient(180deg,var(--accent-glow) 0%,var(--accent-soft) 100%);border:1px solid var(--accent-soft-mid);padding:.22rem .5rem;border-radius:7px;margin-bottom:.35rem;box-shadow:0 1px 2px #045a5214}.badge--cats{color:#0c4a6e;background:linear-gradient(180deg,var(--sky-glow) 0%,var(--sky-soft) 100%);border-color:#38bdf88c;box-shadow:0 1px 3px #0284c71f}.badge--dogs{color:#9a3412;background:linear-gradient(180deg,var(--coral-glow) 0%,var(--coral-soft) 100%);border-color:#f973568c;box-shadow:0 1px 3px #ea580c1f}h1{font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.2;letter-spacing:-.02em;margin:0 0 .5rem}.lead{font-size:1.1rem;color:var(--muted);margin:0 0 2rem;max-width:40rem}.home{max-width:min(100%,var(--wide))}.home-hero{padding:1.5rem 1.25rem 2rem;margin:0 -1rem .5rem;border-radius:16px;background:radial-gradient(ellipse 100% 80% at 0% 0%,rgb(255 220 200 / .75) 0%,transparent 55%),radial-gradient(ellipse 90% 70% at 100% 10%,rgb(180 250 240 / .65) 0%,transparent 50%),radial-gradient(ellipse 70% 60% at 50% 100%,rgb(230 210 255 / .45) 0%,transparent 45%),linear-gradient(155deg,#fffdfb 0%,var(--accent-glow) 35%,var(--sky-soft) 100%);border:1px solid rgb(126 232 216 / .65);box-shadow:var(--shadow-md),var(--shadow-glow-teal),inset 0 1px #ffffffd9}@media (min-width: 640px){.home-hero{margin-inline:0;padding:2rem 2rem 2.25rem}}.home-kicker{margin:0 0 .35rem;font-size:.8rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--coral-deep)}.home-hero h1{margin-bottom:.35rem;background:linear-gradient(118deg,var(--accent-ink) 0%,var(--accent) 38%,var(--sky-deep) 72%,var(--violet-deep) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.home-hero .lead{margin-bottom:1.25rem}.home-hero-actions{display:flex;flex-wrap:wrap;gap:.6rem}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;border-radius:8px;border:1px solid transparent;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .18s ease,transform .18s ease}.btn-primary{background:linear-gradient(165deg,#2dd4c4 0%,var(--accent) 35%,var(--accent-dark) 100%);color:#fff;border-color:var(--accent-ink);box-shadow:0 2px 4px #045a5240,var(--shadow-glow-teal)}.btn-primary:hover{background:linear-gradient(165deg,#5eead4 0%,#14d9c4 40%,var(--accent) 100%);border-color:var(--accent-dark);color:#fff;box-shadow:0 4px 16px #0ab5a359;transform:translateY(-1px)}.btn-primary:focus-visible{outline:2px solid var(--accent-soft-mid);outline-offset:2px}.btn-ghost{background:color-mix(in srgb,var(--card) 92%,transparent);color:var(--text);border-color:var(--border);backdrop-filter:blur(4px)}.btn-ghost:hover{border-color:var(--accent-soft-mid);background:var(--card);color:var(--accent-ink)}.btn-ghost:focus-visible{outline:2px solid var(--accent-soft-mid);outline-offset:2px}.btn-hue-dogs{border-color:#f973568c;background:linear-gradient(180deg,rgb(255 255 255 / .95) 0%,var(--coral-soft) 100%);color:#7c2d12}.btn-hue-dogs:hover{border-color:var(--coral);background:linear-gradient(180deg,#fff 0%,var(--coral-glow) 100%);color:var(--coral-deep);box-shadow:var(--shadow-glow-warm)}.btn-hue-news{border-color:#8b5cf673;background:linear-gradient(180deg,rgb(255 255 255 / .95) 0%,var(--violet-soft) 100%);color:var(--violet-deep)}.btn-hue-news:hover{border-color:var(--violet);color:#5b21b6;box-shadow:0 6px 22px #8b5cf638}.home-section{margin-top:2.5rem}.home-section>h2{margin:0 0 .35rem;font-size:1.25rem;letter-spacing:-.02em;position:relative;display:inline-block;padding-bottom:.35rem}.home-section>h2:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--coral) 0%,var(--accent) 40%,var(--sky) 100%);opacity:.9}.home-section-intro{margin:0 0 1rem;color:var(--muted);font-size:.95rem;max-width:40rem}.card-elevated{box-shadow:var(--shadow-md);border-color:color-mix(in srgb,var(--border) 55%,var(--accent-soft-mid))}.card-tint{border-width:1px}.card-tint--cats{background:linear-gradient(160deg,#fff 0%,var(--sky-soft) 55%,var(--sky-glow) 100%);border-color:#38bdf866;box-shadow:var(--shadow-md),0 6px 24px #0ea5e91f}.card-tint--dogs{background:linear-gradient(160deg,#fff 0%,var(--coral-soft) 55%,var(--coral-glow) 100%);border-color:#f9735666;box-shadow:var(--shadow-md),0 6px 24px #f973561f}.topic-grid{display:grid;gap:.75rem;list-style:none;margin:0;padding:0}@media (min-width: 520px){.topic-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.topic-grid{grid-template-columns:repeat(4,1fr)}}.topic-cell{margin:0;background:linear-gradient(180deg,var(--card) 0%,var(--bg-elevated) 100%);transition:box-shadow .18s ease,transform .18s ease;border-left-width:4px;border-left-style:solid}.topic-cell[data-category=food]{border-left-color:var(--pillar-food);background:linear-gradient(180deg,#fff 0%,var(--pillar-food-bg) 100%)}.topic-cell[data-category=hydration]{border-left-color:var(--pillar-hydration);background:linear-gradient(180deg,#fff 0%,var(--pillar-hydration-bg) 100%)}.topic-cell[data-category=housing]{border-left-color:var(--pillar-housing);background:linear-gradient(180deg,#fff 0%,var(--pillar-housing-bg) 100%)}.topic-cell[data-category=travel]{border-left-color:var(--pillar-travel);background:linear-gradient(180deg,#fff 0%,var(--pillar-travel-bg) 100%)}.topic-cell:hover{box-shadow:0 8px 26px rgb(var(--shadow-color) / .14);transform:translateY(-2px)}.topic-title{margin:0 0 .5rem;font-size:1rem}.topic-links{font-size:.9rem;font-weight:600}.topic-links a{font-weight:600}.topic-sep{color:var(--muted-faint);padding:0 .2rem}.home-split{display:grid;gap:2rem;margin-top:2.5rem}@media (min-width: 960px){.home-split{grid-template-columns:1fr 1.05fr;align-items:start;gap:2.5rem}}.guide-columns{display:grid;gap:1.5rem}.guide-column{padding:1rem 1.1rem;border-radius:12px;border:1px solid var(--border)}.guide-column--cats{background:linear-gradient(180deg,rgb(255 255 255 / .9) 0%,var(--sky-soft) 100%);border-color:#38bdf859}.guide-column--dogs{background:linear-gradient(180deg,rgb(255 255 255 / .9) 0%,var(--coral-soft) 100%);border-color:#f9735659}@media (min-width: 520px){.guide-columns{grid-template-columns:1fr 1fr;gap:1.25rem}}.guide-col-title{margin:0 0 .65rem;font-size:.95rem;font-weight:600}.guide-list{margin:0;padding:0;list-style:none}.guide-list li{padding:.55rem 0;border-bottom:1px solid var(--border);font-size:.95rem}.guide-list li:last-child{border-bottom:none}.guide-list a{font-weight:500}.guide-list .meta{display:block;margin-top:.2rem}.news-cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.news-card{margin:0;border-left-width:4px;border-left-style:solid;border-left-color:var(--accent);background:linear-gradient(90deg,var(--accent-glow) 0%,var(--card) 28%)}.news-cards .news-card:nth-child(2){border-left-color:var(--coral);background:linear-gradient(90deg,var(--coral-glow) 0%,var(--card) 30%)}.news-cards .news-card:nth-child(3){border-left-color:var(--sky-deep);background:linear-gradient(90deg,var(--sky-soft) 0%,var(--card) 30%)}.news-cards .news-card:nth-child(4){border-left-color:var(--violet);background:linear-gradient(90deg,var(--violet-soft) 0%,var(--card) 30%)}.news-cards .news-card:nth-child(5){border-left-color:var(--sun-deep);background:linear-gradient(90deg,var(--sun-soft) 0%,var(--card) 30%)}.news-date{display:block;font-size:.75rem;font-weight:700;letter-spacing:.04em;color:var(--accent-ink);margin-bottom:.35rem}.news-card-title{margin:0 0 .4rem;font-size:1rem;line-height:1.35}.news-card-title a{text-decoration:none;color:var(--text)}.news-card-title a:hover{color:var(--accent);text-decoration:underline;text-decoration-color:var(--accent-soft-mid)}.news-card-desc{margin:0;font-size:.88rem;color:var(--muted);line-height:1.45}.home-footnote{margin:1rem 0 0;font-size:.9rem}.home-aside{margin-top:2.75rem;background:linear-gradient(125deg,var(--coral-glow) 0%,var(--accent-glow) 40%,var(--violet-soft) 85%);border-color:#7ee8d88c;box-shadow:var(--shadow-md),0 0 0 1px #ffffff80 inset}.home-aside h2{margin:0 0 .5rem;font-size:1.05rem;color:var(--accent-ink)}.home-aside p{margin:0;font-size:.92rem;color:var(--muted);line-height:1.55}.home-aside a{color:var(--accent-dark);font-weight:500}.home-aside a:hover{color:var(--accent)}.home-aside strong{color:var(--text)}.money-hero{padding:2.75rem 0 1.5rem}.money-kicker{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink);background:var(--accent-soft);border-radius:999px;padding:.3rem .75rem;margin:0 0 .9rem}.money-hero h1{font-size:clamp(1.9rem,4.2vw,3rem);line-height:1.12;margin:0 0 .85rem;letter-spacing:-.02em}.money-sub{font-size:1.06rem;color:var(--muted);max-width:46rem;margin:0 0 1.4rem}.money-actions{display:flex;flex-wrap:wrap;gap:.6rem}.price-card{background:linear-gradient(160deg,var(--accent-glow),var(--card) 62%);border:1px solid var(--border);border-radius:18px;padding:1.5rem 1.6rem;margin:1.4rem 0 1.8rem;box-shadow:var(--shadow-md)}.price-label{margin:0;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-ink);font-weight:700}.price-value{margin:.35rem 0 .2rem;font-size:clamp(2.1rem,5vw,2.9rem);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--text);font-variant-numeric:tabular-nums}.price-unit{margin:0;color:var(--muted);font-size:.92rem}.price-meta{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}.chip{font-size:.78rem;padding:.28rem .65rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--muted)}.chip--urgent{background:var(--coral-soft);border-color:#f6c3b5;color:#8a2f18;font-weight:600}.chip--covered{background:var(--accent-soft);border-color:#9fe8dd;color:var(--accent-ink);font-weight:600}.table-scroll{overflow-x:auto;margin:1.2rem 0;border:1px solid var(--border);border-radius:14px;background:var(--card)}table.cost-table{width:100%;border-collapse:collapse;font-size:.94rem;min-width:30rem}table.cost-table caption{text-align:left;padding:.85rem 1rem .2rem;font-weight:700;color:var(--muted);font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}table.cost-table th,table.cost-table td{padding:.7rem 1rem;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}table.cost-table thead th{background:var(--bg-elevated);font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}table.cost-table tbody tr:last-child td{border-bottom:none}table.cost-table tbody tr:hover{background:var(--accent-glow)}.num{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.filter-bar{display:flex;flex-wrap:wrap;gap:.45rem;margin:1.4rem 0 1.6rem}.filter-btn{font:inherit;font-size:.87rem;padding:.4rem .9rem;border-radius:999px;border:1px solid var(--border);background:var(--card);color:var(--muted);cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.filter-btn:hover{border-color:var(--accent);color:var(--accent-ink)}.filter-btn[aria-pressed=true]{background:var(--accent-ink);border-color:var(--accent-ink);color:#fff}.cost-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));margin:0 0 2.5rem;padding:0;list-style:none}.cost-card{display:flex;flex-direction:column;gap:.35rem;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:1.1rem 1.2rem;box-shadow:var(--shadow-sm);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.cost-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--accent)}.cost-card h3{margin:0;font-size:1rem;line-height:1.3}.cost-card h3 a{color:var(--text);text-decoration:none}.cost-card h3 a:hover{color:var(--accent-ink)}.cost-card-price{font-variant-numeric:tabular-nums;font-weight:700;color:var(--accent-ink);font-size:1.05rem}.cost-card-meta{font-size:.82rem;color:var(--muted)}.cost-empty{padding:2rem 0;color:var(--muted)}.affiliate-block{margin:2rem 0;padding:1.3rem 1.4rem;border:1px solid #9fe8dd;background:linear-gradient(150deg,var(--accent-glow),var(--card) 70%);border-radius:16px}.affiliate-heading{margin:0 0 .4rem;font-size:1.05rem}.affiliate-intro{margin:0 0 .9rem;font-size:.9rem;color:var(--muted)}.affiliate-list{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}.affiliate-item{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:.85rem 1rem}.affiliate-item-head{display:flex;align-items:center;justify-content:space-between;gap:.8rem;flex-wrap:wrap}.affiliate-btn{font-size:.85rem;padding:.45rem .95rem}.affiliate-pitch{margin:.45rem 0 .5rem;font-size:.9rem;color:var(--muted)}.affiliate-disclosure{margin:0;font-size:.72rem;color:var(--muted-faint);line-height:1.5}.affiliate-block--compact .affiliate-pitch{display:none}.ad-slot{margin:2rem 0;min-height:90px;text-align:center}.calc{background:var(--card);border:1px solid var(--border);border-radius:18px;padding:1.4rem 1.5rem;box-shadow:var(--shadow-md);margin:1.5rem 0}.calc-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}.calc-field{display:flex;flex-direction:column;gap:.35rem}.calc-field label{font-size:.85rem;font-weight:600;color:var(--muted)}.calc-field input,.calc-field select{font:inherit;padding:.55rem .7rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-elevated);color:var(--text)}.calc-field input:focus,.calc-field select:focus{outline:2px solid var(--accent);outline-offset:1px}.calc-result{margin-top:1.3rem;padding-top:1.2rem;border-top:1px dashed var(--border)}.calc-out{font-size:clamp(1.6rem,4vw,2.2rem);font-weight:800;letter-spacing:-.02em;color:var(--accent-ink);font-variant-numeric:tabular-nums;margin:.2rem 0 .4rem}.calc-note{font-size:.82rem;color:var(--muted);margin:0}.calc-breakdown{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.4rem;font-size:.9rem}.calc-breakdown li{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px dotted var(--border);padding-bottom:.35rem}.disclosure-bar{border-left:3px solid var(--sun);background:var(--sun-soft);border-radius:0 10px 10px 0;padding:.75rem 1rem;font-size:.82rem;color:#6b4e05;margin:1.5rem 0}.disclosure-bar a{color:#6b4e05;text-decoration:underline}.breadcrumbs{font-size:.82rem;color:var(--muted-faint);margin:1.2rem 0 0}.breadcrumbs a{color:var(--muted)}.related-list{list-style:none;padding:0;margin:.8rem 0 2rem;display:grid;gap:.5rem}.related-list li a{display:flex;justify-content:space-between;gap:1rem;padding:.6rem .2rem;border-bottom:1px solid var(--border);color:var(--text);text-decoration:none}.related-list li a:hover{color:var(--accent-ink)}.faq-item{border-bottom:1px solid var(--border);padding:.9rem 0}.faq-item h3{margin:0 0 .35rem;font-size:1rem}.faq-item p{margin:0;color:var(--muted);font-size:.94rem}.btn-secondary{background:var(--corald, var(--coral))}@media (max-width: 640px){.money-hero{padding-top:1.8rem}.price-card{padding:1.2rem 1.1rem}.affiliate-item-head{align-items:flex-start}}
