/* Travel guide pages (/guides/): article layout, figures, tables, author line, related cards and the guides hub. */
.guide-head{padding:clamp(22px,4vw,40px) 0 6px}
.crumbs{font-size:14px;color:var(--muted);font-weight:600;margin:0 0 12px}
.crumbs a{color:var(--muted);text-decoration:underline;text-underline-offset:2px}
.crumbs span[aria-hidden]{margin:0 6px}
.guide-head h1{font-family:var(--font-display);font-size:clamp(30px,5vw,46px);line-height:1.08;letter-spacing:-.02em;margin:8px 0 14px;max-width:22ch}
.guide-head .lead{font-size:clamp(17px,2.2vw,20px);line-height:1.5;max-width:62ch;margin:0;color:rgba(11,15,26,.8)}
.byline{display:flex;gap:10px;align-items:center;margin-top:16px;font-size:14px;color:var(--muted);font-weight:600}
.byline img{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.byline a{color:var(--text)}

.guide-wrap{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:clamp(24px,4vw,48px);align-items:start;padding-top:18px;padding-bottom:clamp(26px,4vw,56px)}
@media (max-width:900px){.guide-wrap{grid-template-columns:minmax(0,1fr)}}
.guide-body.prose{max-width:72ch;margin:0}
.guide-body.prose > * + *{margin-top:16px}
.guide-body.prose > h2{margin-top:34px;font-size:clamp(22px,3vw,26px)}
.guide-body.prose > h3{margin-top:22px}
.prose h3{margin:0;font-family:var(--font-display);font-size:19px;letter-spacing:-.01em}
.prose p,.prose li{font-size:17px;line-height:1.65}
.prose ol{margin:0;padding-left:20px}
.prose ol li{margin:8px 0;color:var(--muted)}
.prose strong{color:var(--text)}
.prose figure{margin:24px 0 8px}
.prose figure img{display:block;width:100%;height:auto;border-radius:var(--radius);border:1px solid var(--border);background:#eee}
.prose figure.narrow{max-width:460px}
.prose figcaption{font-size:14px;color:var(--muted);margin-top:8px;font-weight:600}
.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
.prose table{width:100%;border-collapse:collapse;font-size:15px;min-width:520px}
.prose th,.prose td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:top}
.prose thead th{font-weight:800;color:var(--text);background:rgba(91,33,182,.05)}
.prose td{color:rgba(11,15,26,.78)}
.prose tr:last-child td{border-bottom:none}
.quick-answer{border-left:3px solid var(--primary);background:rgba(91,33,182,.06);padding:14px 16px;border-radius:var(--radius)}
.quick-answer p{color:rgba(11,15,26,.86)}
.toc{border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;background:var(--surface)}
.toc strong{display:block;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--primary);margin-bottom:6px}
.toc ol{margin:0;padding-left:20px}
.toc li{margin:4px 0;font-size:16px}
.guide-cta{border:1px solid var(--border-strong);background:var(--surface);padding:20px;border-radius:var(--radius)}
.guide-cta h2{margin:0 0 8px}
.guide-cta .row{margin-top:14px}
.guide-body .btn{text-decoration:none}
.guide-body .btn.primary{color:#fff}
.guide-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:14px}
@media (max-width:900px){.guide-aside{position:static}}
.guide-aside .card strong{display:block;font-family:var(--font-display);font-size:18px;margin-bottom:8px}
.guide-aside .card ul{list-style:none;padding:0;margin:0 0 14px}
.guide-aside .card li{margin:8px 0;font-size:15px}
.guide-sources{font-size:14px}
.guide-sources li{font-size:14px}

.guide-related{padding-bottom:clamp(26px,4vw,56px)}
.guide-related h2{font-family:var(--font-display);font-size:clamp(22px,3vw,26px);margin:0 0 16px}
.guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:900px){.guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.guide-grid{grid-template-columns:1fr}}
.guide-card{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface);text-decoration:none;color:var(--text)}
.guide-card:hover{border-color:var(--primary)}
.guide-card img{display:block;width:100%;aspect-ratio:1200 / 630;object-fit:cover}
.guide-card span{display:block;padding:0 14px}
.guide-card .guide-card-title{font-family:var(--font-display);font-weight:700;font-size:18px;line-height:1.25;padding-top:12px}
.guide-card .guide-card-desc{color:var(--muted);font-size:15px;padding-top:6px;padding-bottom:14px}
.hub-intro{max-width:66ch}
