
/* ==========================================================================
   Paws of Oz blog — Astra-inspired theme
   ========================================================================== */
:root{
  --ast-primary:#1a7f5a;
  --ast-primary-dark:#146347;
  --ast-accent:#c2581f;
  --ast-ink:#1f2933;
  --ast-body:#3e4c59;
  --ast-muted:#5b6b7b;
  --ast-line:#e3e8ee;
  --ast-soft:#f7f9fb;
  --ast-white:#fff;
  --ast-container:1200px;
  --ast-radius:4px;
  --ast-shadow:0 1px 3px rgba(31,41,51,.06),0 1px 2px rgba(31,41,51,.04);
}
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0;background:var(--ast-white);color:var(--ast-body);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:16px;line-height:1.7;
}
img{max-width:100%;height:auto;}
a{color:var(--ast-primary);text-decoration:none;}
a:hover{color:var(--ast-primary-dark);text-decoration:underline;}
h1,h2,h3,h4,h5,h6{color:var(--ast-ink);line-height:1.3;margin:0 0 .6em;font-weight:600;}
.ast-container{max-width:var(--ast-container);margin:0 auto;padding:0 24px;}
.ast-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}

/* ---------- top bar ---------- */
.ast-topbar{background:var(--ast-ink);color:#c7d0d9;font-size:12.5px;}
.ast-topbar .ast-container{display:flex;justify-content:space-between;align-items:center;height:34px;gap:16px;}
.ast-topbar a{color:#c7d0d9;}
.ast-topbar a:hover{color:#fff;}

/* ---------- header ---------- */
.ast-header{background:#fff;border-bottom:1px solid var(--ast-line);position:relative;z-index:60;}
.ast-header .ast-container{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:24px;}
.ast-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex:0 0 auto;}
.ast-logo{width:38px;height:38px;border-radius:10px;background:var(--ast-primary);color:#fff;
  display:flex;align-items:center;justify-content:center;font-weight:700;font-size:19px;letter-spacing:-.5px;}
.ast-brand-txt strong{display:block;color:var(--ast-ink);font-size:20px;line-height:1.15;letter-spacing:-.3px;}
.ast-brand-txt span{display:block;color:var(--ast-muted);font-size:11.5px;letter-spacing:.4px;text-transform:uppercase;}

.ast-nav{display:flex;align-items:center;gap:2px;}
.ast-nav > ul{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0;}
.ast-nav li{position:relative;list-style:none;}
.ast-nav a{display:block;padding:12px 13px;color:var(--ast-ink);font-size:14.5px;font-weight:500;}
.ast-nav a:hover{color:var(--ast-primary);text-decoration:none;}
.ast-nav .ast-sub{display:none;position:absolute;top:100%;left:0;min-width:238px;background:#fff;
  border:1px solid var(--ast-line);border-top:2px solid var(--ast-primary);box-shadow:0 6px 22px rgba(31,41,51,.09);
  padding:6px 0;z-index:70;border-radius:0 0 4px 4px;}
.ast-nav li:hover > .ast-sub{display:block;}
.ast-nav .ast-sub a{padding:8px 16px;font-size:14px;font-weight:400;color:var(--ast-body);}
.ast-nav .ast-sub a:hover{background:var(--ast-soft);color:var(--ast-primary);}
.ast-btn-shop{background:var(--ast-accent)!important;color:#fff!important;border-radius:999px;
  padding:9px 20px!important;margin-left:8px;font-weight:600!important;font-size:14px!important;}
.ast-btn-shop:hover{background:#a44a17!important;color:#fff!important;text-decoration:none;}

.ast-nav-toggle{display:none;background:none;border:1px solid var(--ast-line);border-radius:4px;
  width:40px;height:36px;cursor:pointer;padding:0;}
.ast-nav-toggle span{display:block;width:18px;height:2px;background:var(--ast-ink);margin:4px auto;}

/* ---------- breadcrumb ---------- */
.ast-breadcrumb{background:var(--ast-soft);border-bottom:1px solid var(--ast-line);font-size:13px;color:var(--ast-muted);}
.ast-breadcrumb .ast-container{padding-top:11px;padding-bottom:11px;}
.ast-breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;}
.ast-breadcrumb li:not(:last-child)::after{content:"/";margin-left:6px;color:#b6c2cd;}

/* ---------- layout ---------- */
.ast-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:48px;padding:44px 0 64px;align-items:start;}
.ast-layout > *{min-width:0;}
.ast-layout-full{padding:44px 0 64px;}
.ast-layout-full .ast-content{max-width:820px;margin:0 auto;}

/* ---------- cards ---------- */
.ast-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;}
.ast-card{background:#fff;border:1px solid var(--ast-line);border-radius:var(--ast-radius);
  overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .18s ease,transform .18s ease;}
.ast-card:hover{box-shadow:0 8px 26px rgba(31,41,51,.10);transform:translateY(-2px);}
.ast-card-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--ast-soft);}
.ast-card-media img{width:100%;height:100%;object-fit:cover;display:block;}
.ast-card-body{padding:18px 20px 20px;display:flex;flex-direction:column;flex:1;}
.ast-cat-tag{display:inline-block;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;
  color:var(--ast-primary);margin-bottom:8px;}
.ast-card-title{font-size:18px;line-height:1.4;margin:0 0 10px;}
.ast-card-title a{color:var(--ast-ink);}
.ast-card-title a:hover{color:var(--ast-primary);text-decoration:none;}
.ast-card-excerpt{font-size:14.5px;color:var(--ast-muted);margin:0 0 14px;flex:1;}
.ast-card-meta{font-size:12.5px;color:#8a97a3;border-top:1px solid var(--ast-line);padding-top:11px;}

/* ---------- single post ---------- */
.ast-post-header{margin-bottom:26px;}
.ast-post-title{font-size:34px;line-height:1.25;margin:0 0 12px;letter-spacing:-.4px;}
.ast-post-meta{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:13.5px;color:var(--ast-muted);
  border-top:1px solid var(--ast-line);border-bottom:1px solid var(--ast-line);padding:10px 0;}
.ast-post-meta a{color:var(--ast-muted);}
.ast-post-meta a:hover{color:var(--ast-primary);}

.ast-entry{font-size:17px;line-height:1.78;color:var(--ast-body);word-wrap:break-word;overflow-wrap:anywhere;}
.ast-entry > *:first-child{margin-top:0;}
.ast-entry h2{font-size:24px;margin:38px 0 12px;color:var(--ast-ink);}
.ast-entry h3{font-size:19px;margin:28px 0 10px;color:var(--ast-ink);}
.ast-entry p{margin:0 0 20px;}
.ast-entry ul,.ast-entry ol{margin:0 0 20px;padding-left:24px;}
.ast-entry li{margin:6px 0;}
.ast-entry blockquote{margin:24px 0;padding:14px 20px;border-left:3px solid var(--ast-primary);
  background:var(--ast-soft);color:var(--ast-body);}
.ast-entry figure{margin:26px 0;}
.ast-entry figure img{width:100%;border-radius:6px;display:block;}
.ast-entry figcaption{font-size:13px;color:var(--ast-muted);margin-top:8px;font-style:italic;text-align:center;}
.ast-entry table{border-collapse:collapse;width:100%;margin:20px 0;font-size:14.5px;}
.ast-entry th,.ast-entry td{border:1px solid var(--ast-line);padding:9px 12px;text-align:left;vertical-align:top;}
.ast-entry th{background:var(--ast-soft);font-weight:600;color:var(--ast-ink);}
.ast-entry table caption{font-size:13px;color:var(--ast-muted);text-align:left;margin-bottom:6px;}

/* legacy content classes carried over from the drafts */
.ast-entry .author,.ast-entry .author-box{display:flex;gap:16px;align-items:flex-start;
  background:var(--ast-soft);border:1px solid var(--ast-line);border-radius:8px;padding:18px 20px;margin:30px 0;}
.ast-entry .author{align-items:center;}
.ast-entry .avatar,.ast-entry .author-avatar{width:54px;height:54px;border-radius:50%;color:#fff;flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;background:var(--ast-primary);}
.ast-entry .author-avatar{background:#e3e3ff;color:#4f46e5;}
.ast-entry .av-h,.ast-entry .author .avatar{background:#9b59b6;}
.ast-entry .av-d{background:#2f7dd1;}
.ast-entry .av-m{background:#b9772a;}
.ast-entry .nm,.ast-entry .author-name{font-weight:700;color:var(--ast-ink);}
.ast-entry .rl{color:var(--ast-muted);font-size:13.5px;}
.ast-entry .author-info p,.ast-entry .author > div > div{font-size:14.5px;color:var(--ast-body);}
.ast-entry .sub{color:var(--ast-muted);font-size:14px;margin:-6px 0 16px;}
.ast-entry .faq{background:var(--ast-soft);border:1px solid var(--ast-line);border-radius:8px;padding:6px 22px 18px;margin:28px 0;}
.ast-entry .faq h2,.ast-entry .faq h3{margin:16px 0 6px;color:var(--ast-ink);}
.ast-entry .faq p{margin:0 0 12px;font-size:15.5px;}
.ast-entry .faq-item{padding:14px 0;border-bottom:1px solid var(--ast-line);}
.ast-entry .faq-item:last-child{border-bottom:none;}
.ast-entry .faq-q{font-weight:600;margin:0 0 6px;color:var(--ast-ink);}
.ast-entry .faq-a{margin:0;}
.ast-entry .note{background:#fff4ec;border:1px solid #f0d9c8;border-radius:8px;padding:12px 18px;margin:22px 0;font-size:15px;}
.ast-entry .chk{background:var(--ast-soft);border:1px solid var(--ast-line);border-radius:8px;padding:12px 22px;margin:22px 0;font-size:15px;}
.ast-entry .chk li{margin:5px 0;}
.ast-entry .seg{border:1px solid var(--ast-line);border-radius:10px;padding:4px 24px 16px;margin:24px 0;background:#fff;}
.ast-entry .seg.h{border-top:4px solid #9b59b6;}
.ast-entry .seg.d{border-top:4px solid #2f7dd1;}
.ast-entry .seg.m{border-top:4px solid #b9772a;}
.ast-entry .seg > h2:first-child{font-size:24px;margin-top:16px;}
.ast-entry .signoff{margin-top:34px;padding-top:20px;border-top:1px solid var(--ast-line);font-style:italic;}
.ast-entry .tag{display:inline-block;background:var(--ast-primary);color:#fff;font-size:11px;
  padding:2px 9px;border-radius:999px;margin-right:6px;}
.ast-entry .foot{display:none;}

/* ---------- CTA ---------- */
.ast-cta{background:linear-gradient(135deg,#fff4ec,#fff);border:1px solid #f0d9c8;border-left:4px solid var(--ast-accent);
  border-radius:8px;padding:22px 24px;margin:34px 0;}
.ast-cta h3{margin:0 0 6px;font-size:19px;}
.ast-cta p{margin:0 0 14px;font-size:15px;color:var(--ast-body);}
.ast-btn{display:inline-block;background:var(--ast-accent);color:#fff!important;padding:11px 24px;border-radius:999px;
  font-size:14.5px;font-weight:600;}
.ast-btn:hover{background:#a44a17;text-decoration:none;color:#fff!important;}
.ast-btn-outline{display:inline-block;border:1px solid var(--ast-primary);color:var(--ast-primary)!important;
  padding:10px 22px;border-radius:999px;font-size:14px;font-weight:600;}
.ast-btn-outline:hover{background:var(--ast-primary);color:#fff!important;text-decoration:none;}

/* ---------- related / post nav ---------- */
.ast-related{margin-top:44px;padding-top:32px;border-top:1px solid var(--ast-line);}
.ast-related h2{font-size:21px;margin:0 0 18px;}
.ast-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.ast-related-grid .ast-card-title{font-size:15.5px;}
.ast-related-grid .ast-card-media{aspect-ratio:16/10;}
.ast-postnav{display:flex;gap:20px;margin-top:34px;padding-top:24px;border-top:1px solid var(--ast-line);font-size:14px;}
.ast-postnav a{flex:1;color:var(--ast-body);}
.ast-postnav .pn-next{text-align:right;}
.ast-postnav span.lbl{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.6px;color:#8a97a3;margin-bottom:3px;}

/* ---------- sidebar ---------- */
.ast-sidebar{position:sticky;top:24px;}
.ast-widget{background:#fff;border:1px solid var(--ast-line);border-radius:var(--ast-radius);padding:20px 22px;margin-bottom:26px;}
.ast-widget:first-child{margin-top:0;}
.ast-widget h3{font-size:13px;text-transform:uppercase;letter-spacing:.9px;color:var(--ast-ink);
  margin:0 0 14px;padding-bottom:10px;border-bottom:2px solid var(--ast-soft);}
.ast-widget ul{list-style:none;margin:0;padding:0;}
.ast-widget ul li{padding:7px 0;border-bottom:1px dotted var(--ast-line);font-size:14.5px;}
.ast-widget ul li:last-child{border-bottom:none;}
.ast-widget ul li a{color:var(--ast-body);display:flex;justify-content:space-between;gap:10px;}
.ast-widget ul li a:hover{color:var(--ast-primary);text-decoration:none;}
.ast-widget .cnt{color:#8a97a3;font-size:12.5px;}
.ast-widget p{font-size:14.5px;margin:0 0 12px;}
.ast-shop-widget{background:var(--ast-primary);border-color:var(--ast-primary);color:#fff;}
.ast-shop-widget h3{color:#fff;border-bottom-color:rgba(255,255,255,.25);}
.ast-shop-widget p{color:rgba(255,255,255,.88);}
.ast-shop-widget .ast-btn{background:#fff;color:var(--ast-primary)!important;}
.ast-shop-widget .ast-btn:hover{background:#f2f7f5;}
.ast-search{display:flex;gap:8px;}
.ast-search input{flex:1;border:1px solid var(--ast-line);border-radius:4px;padding:9px 12px;font-size:14px;color:var(--ast-ink);}
.ast-search button{border:none;background:var(--ast-primary);color:#fff;border-radius:4px;padding:0 15px;cursor:pointer;font-size:14px;}

/* ---------- hero ---------- */
.ast-hero{background:linear-gradient(135deg,#f2f7f5 0%,#fff8f3 100%);border-bottom:1px solid var(--ast-line);}
.ast-hero .ast-container{padding-top:52px;padding-bottom:52px;}
.ast-hero h1{font-size:42px;line-height:1.18;letter-spacing:-.8px;margin:0 0 14px;max-width:760px;}
.ast-hero p.lead{font-size:18px;color:var(--ast-body);max-width:660px;margin:0 0 24px;}
.ast-hero-stats{display:flex;flex-wrap:wrap;gap:28px;margin-top:26px;font-size:13.5px;color:var(--ast-muted);}
.ast-hero-stats b{display:block;font-size:22px;color:var(--ast-ink);line-height:1.2;}

/* ---------- section head ---------- */
.ast-sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;
  border-bottom:2px solid var(--ast-soft);padding-bottom:12px;margin-bottom:26px;}
.ast-sec-head h2{font-size:23px;margin:0;}
.ast-sec-head a{font-size:13.5px;font-weight:600;}

/* ---------- pagination-ish ---------- */
.ast-pager{display:flex;justify-content:center;gap:10px;margin-top:38px;font-size:14px;}
.ast-pager a,.ast-pager span{border:1px solid var(--ast-line);border-radius:4px;padding:7px 14px;color:var(--ast-body);}
.ast-pager a:hover{background:var(--ast-primary);border-color:var(--ast-primary);color:#fff;text-decoration:none;}

/* ---------- footer ---------- */
.ast-footer{background:var(--ast-ink);color:#aeb9c4;font-size:14px;margin-top:20px;}
.ast-footer .ast-container{padding-top:48px;padding-bottom:26px;}
.ast-footer-cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px;}
.ast-footer h4{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.9px;margin:0 0 14px;}
.ast-footer ul{list-style:none;margin:0;padding:0;}
.ast-footer li{padding:5px 0;}
.ast-footer a{color:#aeb9c4;}
.ast-footer a:hover{color:#fff;}
.ast-footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:34px;padding-top:20px;
  display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;font-size:13px;color:#8b98a5;}
.ast-footer .ast-brand-txt strong{color:#fff;}
.ast-footer .ast-brand-txt span{color:#8b98a5;}
.ast-note{font-size:13.5px;color:var(--ast-muted);background:var(--ast-soft);border:1px solid var(--ast-line);
  border-radius:6px;padding:12px 16px;margin:18px 0;}

/* ---------- back to top ---------- */
.ast-top{position:fixed;right:22px;bottom:22px;width:42px;height:42px;border:none;border-radius:6px;
  background:var(--ast-primary);color:#fff;font-size:18px;cursor:pointer;display:none;z-index:80;
  box-shadow:0 4px 14px rgba(26,127,90,.35);}
.ast-top.show{display:block;}

/* ---------- 404 ---------- */
.ast-404{text-align:center;padding:60px 0;}
.ast-404 h1{font-size:76px;margin:0 0 6px;color:var(--ast-line);}

/* ---------- responsive ---------- */
@media (max-width:1024px){
  .ast-layout{grid-template-columns:minmax(0,1fr);}
  .ast-sidebar{position:static;}
  .ast-grid,.ast-related-grid{grid-template-columns:repeat(2,1fr);}
  .ast-footer-cols{grid-template-columns:1fr 1fr;}
}
@media (max-width:782px){
  .ast-nav-toggle{display:block;}
  .ast-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;
    border-bottom:1px solid var(--ast-line);box-shadow:0 8px 20px rgba(31,41,51,.08);padding:8px 0;}
  .ast-nav.open{display:block;}
  .ast-nav > ul{flex-direction:column;align-items:stretch;gap:0;}
  .ast-nav > ul > li > a{padding:12px 24px;}
  .ast-nav .ast-sub{display:none;position:static;box-shadow:none;border:none;border-top:1px solid var(--ast-line);
    background:var(--ast-soft);padding:0;}
  .ast-nav li.open > .ast-sub{display:block;}
  .ast-nav .ast-sub a{padding:9px 38px;}
  .ast-btn-shop{margin:10px 24px!important;text-align:center;}
  .ast-grid,.ast-related-grid{grid-template-columns:1fr;}
  .ast-hero h1{font-size:30px;}
  .ast-post-title{font-size:26px;}
  .ast-topbar .ast-container .tb-right{display:none;}
  .ast-postnav{flex-direction:column;gap:14px;}
  .ast-postnav .pn-next{text-align:left;}
}
