/* Guides only: category index and shared breadcrumb spacing. */
.breadcrumb_line.guides-breadcrumb { margin:0; padding:0; }
.guides-breadcrumb .breadcrumb { margin:0; padding:18px 0; align-items:center; line-height:1.6; }
.guides-breadcrumb .breadcrumb-item { margin-top:0; margin-bottom:0; }
#guides.guides-index { padding-top:36px; padding-bottom:72px; color:#263c4b; }
.guides-hero { position:relative; display:grid; grid-template-columns:minmax(0,1fr) 190px; align-items:center; gap:40px; padding:42px 46px; overflow:hidden; border:1px solid #dfe7d4; border-radius:20px; background:linear-gradient(120deg,#f2f6e9 0%,#f7faf3 65%,#eaf2df 100%); }
.guides-hero-copy { position:relative; z-index:1; }
.guides-kicker { display:block; margin-bottom:13px; color:#638136; font-size:12px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
#guides .guides-hero h1 { margin:0 0 16px; color:#4f7d0e; font-size:52px; font-weight:600; line-height:1.1; letter-spacing:-.03em; }
.guides-hero p { max-width:750px; margin:0; color:#466052; font-size:19px; line-height:1.7; }
.guides-hero-art { width:190px; height:190px; color:#658c37; }
.guides-hero-note { display:flex; flex-wrap:wrap; gap:10px 24px; margin-top:24px; color:#687b62; font-size:13px; }
.guides-hero-note span { display:inline-flex; align-items:center; gap:8px; }
.guides-hero-note span::before { content:''; width:5px; height:5px; border-radius:50%; background:#88a85c; }
.guides-toolbar { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:20px; margin:38px 0 24px; }
#guides .guides-toolbar h2 { margin:0; color:#21474b; font-size:24px; font-weight:600; }
.guides-filters { display:flex; flex-wrap:wrap; gap:8px; }
.guides-filters[hidden] { display:none; }
.guides-filters button { border:1px solid #dce4d7; border-radius:30px; background:#fff; color:#526951; padding:9px 16px; font:inherit; font-size:14px; line-height:1.3; cursor:pointer; transition:background .15s,color .15s,border-color .15s; }
.guides-filters button:hover { background:#f3f7eb; border-color:#98b477; }
.guides-filters button[aria-pressed=true] { border-color:#527e26; background:#527e26; color:#fff; }
.guides-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.guide-card { position:relative; display:flex; min-width:0; flex-direction:column; padding:28px 30px 24px; border:1px solid #e0e7dc; border-radius:16px; background:#fff; box-shadow:0 3px 12px rgba(35,63,34,.025); transition:transform .2s,box-shadow .2s,border-color .2s; }
.guide-card[hidden] { display:none; }
.guide-card:hover, .guide-card:focus-within { transform:translateY(-3px); border-color:#a7bd8c; box-shadow:0 12px 28px rgba(42,69,35,.08); }
.guide-card-top { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; }
.guide-card-topic { display:flex; align-items:center; gap:12px; }
.guide-card-icon { display:grid; flex:0 0 46px; place-items:center; width:46px; height:46px; border-radius:13px; background:#eff5e6; color:#678b37; }
.guide-card-icon svg { width:29px; height:29px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.guide-card-category { color:#6e805b; font-size:11px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.guide-card-number { color:#b9c5af; font-size:24px; font-weight:500; letter-spacing:-.04em; }
#guides .guide-card h2 { margin:0 0 15px; font-size:26px; line-height:1.3; font-weight:600; letter-spacing:-.012em; }
.guide-card h2 a { color:#25494b; text-decoration:none; }
.guide-card h2 a::after { content:''; position:absolute; inset:0; border-radius:16px; }
.guide-card h2 a:focus { outline:none; }
.guide-card h2 a:focus-visible::after { outline:3px solid #699734; outline-offset:3px; }
.guide-card p { flex-grow:1; margin:0 0 24px; color:#65756f; font-size:16px; line-height:1.75; }
.guide-card-action { display:flex; justify-content:space-between; align-items:center; gap:18px; padding-top:17px; border-top:1px solid #e9eee5; color:#527d28; font-size:14px; font-weight:600; }
.guide-card-action > span { display:grid; place-items:center; width:29px; height:29px; border-radius:50%; background:#f0f5e9; font-size:20px; font-weight:400; transition:background .2s,color .2s; }
.guide-card:hover .guide-card-action > span { background:#638b36; color:white; }
.guide-card[data-topic=community] .guide-card-icon { background:#edf4f3; color:#497c7a; }
.guide-card[data-topic=community] .guide-card-category { color:#587d79; }
.guide-card[data-topic=business] .guide-card-icon { background:#f6f1e8; color:#a07d3e; }
.guide-card[data-topic=business] .guide-card-category { color:#977b4d; }
.guides-count { margin:22px 0 0; color:#809078; font-size:13px; text-align:right; }
.guides-filters button:focus-visible { outline:3px solid #9bb67a; outline-offset:3px; }
@media (max-width:991px) {
    .guides-hero { grid-template-columns:minmax(0,1fr) 130px; gap:20px; padding:32px; }
    .guides-hero-art { width:130px; height:150px; }
    .guides-toolbar { align-items:flex-start; flex-direction:column; }
    #guides .guide-card h2 { font-size:24px; }
    .guide-card { padding:24px; }
}
@media (max-width:767px) {
    .guides-breadcrumb .breadcrumb { padding-top:16px; padding-bottom:16px; }
    #guides.guides-index { padding-top:24px; padding-bottom:45px; }
    .guides-hero { display:block; padding:28px 25px; border-radius:16px; }
    #guides .guides-hero h1 { font-size:42px; }
    .guides-hero p { font-size:17px; line-height:1.7; }
    .guides-hero-art { display:none; }
    .guides-hero-note { gap:9px 18px; margin-top:20px; font-size:12px; }
    .guides-toolbar { margin-top:30px; gap:16px; }
    .guides-filters { gap:7px; }
    .guides-filters button { padding:8px 12px; font-size:13px; }
    .guides-grid { grid-template-columns:minmax(0,1fr); gap:18px; }
    .guide-card { padding:23px; }
    .guide-card-category { font-size:10px; letter-spacing:.08em; }
    #guides .guide-card h2 { font-size:25px; }
    .guide-card p { font-size:15px; }
}
@media (prefers-reduced-motion:reduce) {
    .guide-card, .guide-card-action > span, .guides-filters button { transition:none; }
    .guide-card:hover, .guide-card:focus-within { transform:none; }
}
@media print {
    .guides-filters, .guides-hero-art { display:none; }
    .guides-grid { display:block; }
    .guide-card { break-inside:avoid; margin-bottom:20px; box-shadow:none; }
}
