/* WordPress-specific additions to base.css */
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;background:#fff;padding:10px 14px}
.skip-link:focus{left:12px;top:12px}
body.admin-bar .site-header{top:32px}
@media (max-width:782px){body.admin-bar .site-header{top:0}}
.brand-logo{height:54px;width:auto}

/* menu from wp_nav_menu */
.nav-menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.nav-menu li{position:relative}
.nav-menu .current-menu-item > a,.nav-menu .current_page_item > a,.nav-menu .current-menu-ancestor > a{color:var(--teal)}
.nav-menu .sub-menu{list-style:none;margin:0;padding:8px;position:absolute;top:100%;left:0;min-width:220px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 30px rgba(0,0,0,.08);display:none;z-index:30}
.nav-menu li:hover > .sub-menu,.nav-menu li:focus-within > .sub-menu{display:block}
.nav-menu .sub-menu a{display:block;border-radius:8px}
.cart-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;color:var(--ink)}
.cart-link:hover{background:var(--mist)}
.cart-link svg{width:22px;height:22px;fill:currentColor}
.cart-count{position:absolute;top:2px;right:0;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--magenta);color:#fff;font:700 .7rem/18px var(--f-display);text-align:center}
.cart-count[hidden]{display:none}
@media (max-width:900px){
  .nav-menu{flex-direction:column;align-items:stretch}
  .nav-menu .sub-menu{position:static;display:none;box-shadow:none;border:0;padding:0 0 0 14px}
  .nav-menu li.sub-open > .sub-menu{display:block}
  .cart-link{align-self:flex-start}
}

/* page hero lead may come from term descriptions */
.page-hero p{margin:0}
.page-hero .crumbs a{color:#a9d3d3}

/* text pages and posts */
.prose{max-width:46rem;display:grid;gap:16px;font-size:1.05rem}
.prose > *{margin:0}
.prose h2{font-size:1.6rem;color:var(--teal-deep);margin-top:12px}
.prose h3{font-size:1.25rem;color:var(--teal-deep);margin-top:8px}
.prose img{border-radius:var(--radius);height:auto}
.prose ul,.prose ol{padding-left:1.2em;display:grid;gap:6px}
.prose a{color:var(--teal)}
.prose blockquote{border-left:4px solid var(--magenta);padding:4px 0 4px 18px;color:var(--muted)}
.article{margin-inline:auto}
.chips a{display:inline-block;padding:8px 16px;border:1.5px solid var(--line);border-radius:999px;font:600 .88rem var(--f-display);color:var(--teal-deep);text-decoration:none;background:#fff}
.chips a[aria-current="page"],.chips a:hover{background:var(--teal);border-color:var(--teal);color:#fff}
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
@media (max-width:900px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.news-grid{grid-template-columns:1fr}}
.news-card img{width:100%;aspect-ratio:16/9;object-fit:cover;height:auto}
.news-meta{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0}
.pill{background:var(--mist);color:var(--teal-deep);border-radius:999px;padding:3px 10px}
.news-body p{margin:0;color:var(--muted);font-size:.95rem}
.news-body .more{font:700 .88rem var(--f-display);color:var(--teal)}
.navigation.pagination{margin-top:32px}
.nav-links{display:flex;gap:8px;flex-wrap:wrap}
.nav-links .page-numbers{display:inline-flex;min-width:42px;height:42px;align-items:center;justify-content:center;border:1.5px solid var(--line);border-radius:999px;text-decoration:none;color:var(--teal-deep);font:700 .9rem var(--f-display)}
.nav-links .page-numbers.current{background:var(--teal);border-color:var(--teal);color:#fff}

/* footer */
.footer-about{display:grid;gap:16px;align-content:start}
.footer-about p{margin:0}
.footer-menu{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.site-footer h4.mt{margin-top:22px}
.site-footer ul li{margin:0}

/* buttons used in theme templates */
.btn-dark{background:var(--teal-deep);color:#fff}
.btn-dark:hover{background:var(--teal)}
.btn-wa{background:#1fa855;color:#fff}
.btn-wa:hover{background:#178a45}
.btn-wa svg{width:20px;height:20px;fill:currentColor}
.btn-sm{padding:9px 16px;font-size:.78rem}
.empty{color:var(--muted)}
.wp-caption,.alignnone{max-width:100%}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
.woocommerce-cart .prose,.woocommerce-checkout .prose,.woocommerce-account .prose{max-width:none}
