/* ============================================================
   country-base.css — styles for /countries/{slug}.html (sub-variant A)
   Loaded by templates/countries/base.html (consolidation refactor 2026-05-03).
   Replaces what was previously duplicated in each page's inline <style> block.
   ============================================================ */

/* Article Header */
.article-header{padding:48px 0 40px;border-bottom:1px solid rgba(0,0,0,0.06);margin-bottom:40px}
.article-header__tag{display:inline-block;padding:4px 12px;background:var(--primary-light,var(--primary-10));color:var(--primary);font:600 12px/1 var(--font-body);border-radius:20px;text-transform:uppercase;letter-spacing:0.04em;margin-bottom:20px}
.article-header h1{font-size:36px;line-height:1.2;margin-bottom:16px;max-width:720px}
.article-header__meta{font-size:14px;color:var(--grey-500)}
@media(max-width:640px){.article-header h1{font-size:28px}}

/* Article Body */
.article-body{max-width:720px;padding-bottom:64px}
.article-body h2{font-size:24px;margin:40px 0 16px}
.article-body h3{font-size:18px;margin:32px 0 12px}
.article-body p{font-size:16px;line-height:1.7}
.article-body strong{font-weight:600}

/* Info Box */
.info-box{background:var(--grey-100);border-radius:var(--radius-lg);padding:24px 28px;margin:28px 0}
.info-box__title{font:600 15px/1 var(--font-body);margin-bottom:12px}
.info-box p{font-size:15px;margin-bottom:8px}

/* Article CTA (legacy block — present in OLD pages, replaced by .report-cta in NEW) */
.article-cta{background:var(--primary);color:var(--paper);border-radius:var(--radius-lg);padding:40px;margin:48px 0;text-align:center}
.article-cta h3{color:var(--paper);font-size:22px;margin-bottom:12px}
.article-cta p{color:rgba(255,255,255,0.85);margin-bottom:20px}
.article-cta .btn{display:inline-flex;padding:12px 28px;background:#FAFAF8;color:var(--primary);border-radius:var(--radius);font:600 15px/1 var(--font-body)}
.article-cta .btn:hover{transform:translateY(-2px)}

/* FAQ accordion */
.article-faq{margin:48px 0}
.article-faq h2{font-size:24px;margin-bottom:20px}
.faq-item{border:1px solid rgba(0,0,0,0.08);border-radius:var(--radius);margin-bottom:8px;overflow:hidden}
.faq-item summary{padding:16px 20px;font-weight:600;cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;transition:background var(--duration-normal,200ms) var(--ease-out)}
.faq-item summary:hover{background:var(--grey-100)}
.faq-item summary::after{content:'+';font-size:20px;font-weight:400;color:var(--primary);flex-shrink:0;transition:transform var(--duration-normal,200ms) var(--ease-out)}
.faq-item[open] summary::after{content:'\2212'}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item p{padding:0 20px 16px;color:var(--grey-500);line-height:1.7;font-size:15px}

/* Snapshot grid */
.snapshot{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:32px 0}
.snapshot__item{background:var(--grey-100);padding:16px;border-radius:var(--radius)}
.snapshot__label{font:500 12px/1 var(--font-body);text-transform:uppercase;letter-spacing:.04em;color:var(--grey-500);margin-bottom:6px}
.snapshot__value{font:700 16px/1.3 var(--font-body);color:var(--ink)}

/* Visa table */
.visa-table{width:100%;border-collapse:collapse;margin:24px 0;font-size:14px}
.visa-table th{background:var(--grey-100);padding:12px 16px;text-align:left;font:600 13px/1 var(--font-body);text-transform:uppercase;letter-spacing:.03em;color:var(--grey-500);border-bottom:2px solid rgba(0,0,0,.1)}
.visa-table td{padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.06);vertical-align:top}
.visa-table tr:hover{background:var(--primary-10)}
.visa-table .prog-name{font-weight:600;color:var(--ink)}
@media(max-width:768px){.visa-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}}

/* Cost of living cards */
.col-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin:24px 0}
.col-card{background:var(--grey-100);border-radius:var(--radius-lg);padding:20px}
.col-card__city{font:700 18px/1.2 var(--font-display);margin-bottom:12px}
.col-card__row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid rgba(0,0,0,.06);font-size:14px}
.col-card__row:last-child{border-bottom:none}

/* Download grid */
.download-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px;margin:24px 0}
.download-card{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);transition:all var(--duration-normal,200ms) var(--ease-out);text-decoration:none;color:inherit}
.download-card:hover{border-color:var(--primary);background:var(--primary-10)}
.download-card__icon{font-size:24px;flex-shrink:0}
.download-card__title{font:600 14px/1.3 var(--font-body);color:var(--ink)}
.download-card__format{font:400 12px/1 var(--font-body);color:var(--grey-500)}

/* Explore More */
.explore-more{margin:48px 0;padding:32px;background:var(--grey-100);border-radius:var(--radius-lg)}
.explore-more h2{font-size:22px;margin-bottom:16px}
.explore-more ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}
.explore-more li{margin:0}
.explore-more a{display:block;padding:10px 16px;background:#FAFAF8;border:1px solid rgba(0,0,0,0.08);border-radius:var(--radius);font:500 14px/1.4 var(--font-body);transition:all var(--duration-normal,200ms) var(--ease-out)}
.explore-more a:hover{border-color:var(--primary);background:var(--primary-10)}

/* AI summary (visually hidden, harvested by AI/bots) */
.ai-summary{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
