/*
Theme Name: HiraCost
Theme URI: https://hiracost.com/
Author: hiracost
Author URI: https://hiracost.com/
Description: HiraCost High-performance cost of living theme (countries, states, cities).
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 8.1
Text Domain: hiracost
*/
:root {
  --bg: #fafafa;
  --bg-card: #ffffff;
  --text: #1a1a1a;
  --text-muted: #5f6368;
  --accent: #2e62cc;
  --accent-hover: #1557b0;
  --border: #dadce0;
  --radius: 12px;
  --radius-sm: 8px;
  --shadow: 0 1px 3px rgba(0,0,0,.08);
  --shadow-md: 0 4px 12px rgba(0,0,0,.08);
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--font);font-size:15px;line-height:1.5;color:var(--text);background:var(--bg);min-height:100vh;display:flex;flex-direction:column;}
a{color:var(--accent);text-decoration:none;}
a:hover{text-decoration:underline;}
.container{width:100%;max-width:1100px;margin:0 auto;padding:0 24px;}
.site-header{background:var(--bg-card);border-bottom:1px solid var(--border);padding:12px 0;}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;}
.brand{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:1.25rem;color:var(--accent);text-decoration:none;}
.brand img{width:36px;height:36px;}
.brand-mark{width:36px;height:36px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--accent),#34a853);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.1rem;}
.main-nav{display:flex;align-items:center;gap:8px;}
.nav-link{padding:8px 14px;color:var(--text-muted);font-size:14px;border-radius:var(--radius-sm);}
.nav-link:hover{color:var(--text);background:var(--bg);text-decoration:none;}
.nav-link.active{color:var(--accent);font-weight:500;}
.currency-switch .pill-button{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:20px;font-size:14px;color:var(--text);cursor:pointer;font-family:inherit;box-shadow:var(--shadow);transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .08s ease;}
.currency-switch .pill-button:hover{background:#f1f3f4;border-color:var(--accent);box-shadow:0 0 0 3px rgba(26,115,232,.15);transform:translateY(-1px);}
.currency-switch{position:relative;}
.currency-dropdown{position:absolute;right:0;margin-top:8px;min-width:180px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);padding:4px;z-index:120;opacity:0;transform:translateY(6px);pointer-events:none;transition:opacity .15s ease,transform .15s ease;}
.currency-dropdown.open{opacity:1;transform:translateY(0);pointer-events:auto;}
.currency-dropdown .currency-option{width:100%;display:flex;align-items:center;gap:8px;padding:8px 10px;border:none;background:transparent;font-size:14px;font-family:inherit;color:var(--text);text-align:left;border-radius:6px;cursor:pointer;}
.currency-dropdown .currency-option:hover{background:var(--bg);}
.hero{padding:48px 0 56px;}
.hero-inner{display:flex;flex-direction:column;align-items:center;text-align:center;}
.eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 8px;}
.hero h1{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:400;margin:0 0 12px;color:var(--text);}
.hero-subtitle{color:var(--text-muted);margin:0 0 32px;max-width:480px;}
.search-panel{width:100%;max-width:560px;margin:0 auto;position:relative;}
.search-label{display:block;font-size:13px;color:var(--text-muted);margin-bottom:8px;text-align:left;}
.search-input-wrap{display:flex;align-items:center;background:var(--bg-card);border:1px solid var(--border);border-radius:24px;padding:12px 20px;box-shadow:var(--shadow);transition:box-shadow .2s,border-color .2s;}
.search-input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px rgba(26,115,232,.15);}
.search-icon{font-size:18px;margin-right:12px;opacity:.6;}
.search-input-wrap input{flex:1;border:none;outline:none;font-size:16px;font-family:inherit;background:transparent;}
.search-input-wrap input::placeholder{color:var(--text-muted);}
.search-suggestions{position:absolute;left:0;right:0;top:100%;margin-top:8px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);max-height:320px;overflow-y:auto;z-index:100;display:none;}
.search-suggestions.visible{display:block;}
.search-suggestions .search-suggestion{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:12px 16px;border:0;background:transparent;color:var(--text);text-decoration:none;border-bottom:1px solid var(--border);font-size:15px;text-align:left;font-family:inherit;cursor:pointer;}
.search-suggestions .search-suggestion:last-child{border-bottom:none;}
.search-suggestions .search-suggestion:hover{background:var(--bg);text-decoration:none;}
.search-suggestion-title{display:inline-flex;align-items:center;gap:8px;color:var(--text);}
.search-suggestion-meta{color:var(--text-muted);font-size:13px;}
.suggestion-flag{width:24px;height:18px;object-fit:cover;border-radius:2px;}
.suggestion-flag-emoji{width:auto;height:auto;border-radius:0;font-size:18px;line-height:1;display:inline-flex;align-items:center;justify-content:center;}
.country-grid-section{padding:32px 0 56px;}
.section-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:8px;}
.section-header h2{font-size:1.25rem;font-weight:600;margin:0;}
.link.subtle{color:var(--text-muted);font-size:14px;}
.section-subtitle{color:var(--text-muted);margin:0 0 24px;font-size:14px;}
.country-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px;}
.country-chip{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);text-decoration:none;font-size:14px;line-height:14px;transition:border-color .2s,box-shadow .2s;}
.country-chip:hover{border-color:var(--accent);box-shadow:var(--shadow);text-decoration:none;color:var(--text);}
.country-chip.is-hidden{display:none;}
.country-chip .flag-emoji{display:inline-flex;align-items:center;justify-content:center;width:22px;min-width:22px;font-size:18px;line-height:1;}
.countries-page-main{padding:32px 0 56px;}
.country-grid.country-grid--countries-page{margin-top:24px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;}
.country-grid.country-grid--countries-page .country-chip{padding:12px 16px;font-size:15px;}
.country-grid.country-grid--countries-page .country-chip .flag-emoji{width:24px;min-width:24px;font-size:20px;}
.country-grid-toggle{margin-top:18px;}
.countries-no-results{margin-top:24px;color:var(--text-muted);font-size:15px;}
.page-title{font-size:1.5rem;font-weight:600;margin:0 0 8px;}
.page-desc{color:var(--text-muted);margin:0 0 24px;font-size:14px;}
.list-search-wrap{max-width:400px;margin-bottom:24px;}
.list-search-wrap input{width:100%;padding:12px 16px 12px 40px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:15px;font-family:inherit;background:var(--bg-card) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%235f6368' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E") no-repeat 14px center;}
.list-search-wrap input:focus{outline:none;border-color:var(--accent);}
.countries-table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);}
.countries-table{width:100%;border-collapse:collapse;}
.countries-table th,.countries-table td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--border);}
.countries-table th{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);background:var(--bg);}
.countries-table tr:last-child td{border-bottom:none;}
.countries-table tr:hover td{background:var(--bg);}
.countries-table a{display:inline-flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;}
.countries-table a:hover{color:var(--accent);text-decoration:none;}
.countries-table .flag-cell{width:28px;}
.countries-table .flag-cell img{width:24px;height:18px;object-fit:cover;border-radius:2px;}
.single-post .hero-country{padding:32px 0 40px;background:var(--bg);}
.hero-country-card{background:linear-gradient(135deg,#e8f0fe 0%,#d2e3fc 50%,#e8f0fe 100%);border-radius:var(--radius);padding:32px 40px;margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;border:1px solid rgba(26,115,232,0.15);box-shadow:var(--shadow-md);}
.hero-country-content{flex:1;min-width:200px;}
.hero-country-eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 6px;}
.hero-country h1{font-size:clamp(1.5rem,4vw,2rem);font-weight:700;margin:0 0 8px;color:var(--text);}
.hero-country-name{display:flex;align-items:center;gap:10px;font-size:1rem;color:var(--text-muted);margin:0;}
.hero-country-flag{display:inline-flex;align-items:center;justify-content:center;width:32px;min-width:32px;font-size:28px;line-height:1;}
.hero-country-visual{font-size:4rem;line-height:1;opacity:.7;}
.quick-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.quick-fact{background:var(--bg-card);padding:10px;border-radius:var(--radius-sm);border:1px solid var(--border);display:flex;align-items:flex-start;gap:14px;box-shadow:var(--shadow);transition:border-color .2s,box-shadow .2s;}
.quick-fact:hover{border-color:rgba(26,115,232,.3);box-shadow:0 2px 8px rgba(26,115,232,.08);}
.quick-fact-icon{font-size:24px;line-height:1;}
.quick-fact-body{flex:1;min-width:0;}
.quick-fact-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:6px;line-height:1.3;white-space:nowrap;}
.quick-fact-value{font-weight:600;font-size:1.1rem;color:var(--accent);}
.country-chart-wrap{margin-top:32px;padding:24px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);}
.chart-breakdown-title{font-size:1rem;font-weight:600;margin:0 0 20px;color:var(--text);text-align:center;}
.country-chart-inner{width:40%;}
.chart-donut-wrap{position:relative;margin:0 auto 20px;}
.chart-donut-wrap canvas{display:block;width:100% !important;height:100% !important;}
.chart-donut{width:100%;height:100%;border-radius:50%;}
.chart-donut-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);min-width:80px;min-height:80px;padding:8px;border-radius:50%;background:var(--bg-card);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:inset 0 0 0 2px var(--border);pointer-events:none;}
.chart-donut-total{font-size:1.1rem;font-weight:700;color:var(--accent);line-height:1.2;display:block;}
.chart-donut-label{font-size:11px;color:var(--text-muted);display:block;}
.chart-legend-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:16px 24px;font-size:13px;color:var(--text-muted);}
.chart-legend-list li{display:flex;align-items:center;gap:8px;}
.chart-legend-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;}
.cost-sections{padding:32px 0 40px;}
.cost-sections-grid{display:flex;flex-wrap:wrap;gap:24px;}
.cost-section{margin-bottom:0;min-width:0;}
.cost-section.col-full{flex:0 0 100%;}
.cost-section.col-half{flex:0 0 calc(50% - 12px);}
.cost-section.col-third{flex:0 0 calc(33.333% - 16px);}
.cost-section-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;}
.cost-section-icon{width:44px;height:44px;border-radius:var(--radius-sm);background:linear-gradient(135deg,#e8f0fe,#d2e3fc);display:flex;align-items:center;justify-content:center;font-size:22px;border:1px solid rgba(26,115,232,.12);}
.cost-section h2{font-size:1.15rem;font-weight:600;margin:0;color:var(--text);}
.cost-section-split{display:flex;gap:24px;align-items:flex-start;}
.cost-sections-grid .cost-section-card{min-width:0;box-sizing:border-box;}
.cost-sections-grid .cost-section-card--w100{flex:0 0 100%;}
.cost-sections-grid .cost-section-card--w70{flex:0 0 calc(70% - 12px);}
.cost-sections-grid .cost-section-card--w50{flex:0 0 calc(50% - 12px);}
.cost-sections-grid .cost-section-card--w33{flex:0 0 calc(33.333% - 16px);}
.cost-sections-grid .cost-section-card--w30{flex:0 0 calc(30% - 12px);}
.cost-sections-grid .cost-section-card--w25{flex:0 0 calc(25% - 18px);}
.cost-section-card{flex:0 0 50%;min-width:0;}
.cost-section-title{font-size:1.15rem;font-weight:600;margin:0;color:var(--text);}
.cost-section-icon.dashicons{font-size:24px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;}
.cost-section-icon.cost-section-icon-emoji{font-size:22px;}
.cost-section-desc{min-width:0;padding:20px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);font-size:14px;line-height:1.6;color:var(--text-muted);width:60%;}
.cost-section-desc p{margin:0;}
.cost-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);}
.cost-card-visual{width:100%;height:0;padding-bottom:30%;position:relative;overflow:hidden;background:var(--bg);}
.cost-section.col-full .cost-card-visual{padding-bottom:18%;}
.cost-card-visual img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;}
.cost-card-visual::after{content:"";position:absolute;left:0;right:0;bottom:0;height:40%;background:linear-gradient(to top,rgba(255,255,255,.9),transparent);pointer-events:none;}
.cost-card-table{padding:0;}
.cost-item{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border);gap:16px;}
.cost-item:last-child{border-bottom:none;}
.cost-item-name{font-size:14px;color:var(--text);flex:1;min-width:0;}
.cost-item-value{font-weight:600;color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums;}
.cost-item-info{width:20px;height:20px;border-radius:50%;background:var(--bg);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:var(--text-muted);cursor:help;flex-shrink:0;}
.compare-with-section{padding:32px 0 48px;border-top:1px solid var(--border);background:var(--bg-card);}
.compare-with-title{font-size:1.35rem;font-weight:600;color:var(--text);text-align:center;margin:0 0 24px;}
.vs-cards-grid,.vs-cards-more{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px;}
.vs-cards-more.hidden{display:none;}
.vs-card{display:flex;align-items:center;gap:12px;padding:20px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);text-decoration:none;color:var(--text);transition:border-color .2s,box-shadow .2s;}
.vs-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md);text-decoration:none;color:var(--text);}
.vs-side{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;}
.vs-flag{width:32px;height:24px;object-fit:cover;border-radius:4px;}
.vs-name{font-size:13px;font-weight:600;color:var(--text);}
.vs-amount{font-size:15px;font-weight:700;color:var(--accent);font-variant-numeric:tabular-nums;}
.vs-bar{width:100%;height:6px;background:var(--border);border-radius:3px;overflow:hidden;}
.vs-bar-fill{height:100%;background:#34a853;border-radius:3px;transition:width .3s;}
.vs-divider{font-size:12px;font-weight:700;color:var(--text-muted);flex-shrink:0;}
.vs-show-more{display:block;margin:24px auto 0;padding:12px 28px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-weight:500;color:var(--text);cursor:pointer;font-family:inherit;}
.vs-show-more:hover{border-color:var(--accent);color:var(--accent);}
.vs-show-more.hidden{display:none;}
.cities-section{padding:0 0 48px;background:var(--bg);}
.cities-banner{position:relative;width:100%;height:0;padding-bottom:28%;overflow:hidden;border-radius:var(--radius);margin-bottom:24px;background:var(--bg);}
.cities-banner img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;}
.cities-banner-overlay{position:absolute;left:0;top:0;right:0;bottom:0;background:rgba(26,115,232,0.6);display:flex;align-items:center;padding:0 32px;}
.cities-title{font-size:clamp(1.1rem,2.5vw,1.4rem);font-weight:600;color:#fff;margin:0;line-height:1.3;}
.cities-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px;}
.city-card{padding:18px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);transition:border-color .2s;}
.city-card:hover{border-color:rgba(26,115,232,0.4);}
.city-card-highlight{border-color:var(--accent);box-shadow:0 0 0 2px rgba(26,115,232,0.2);}
.city-name{display:block;font-size:1rem;font-weight:700;color:var(--text);margin-bottom:12px;}
.city-row{display:flex;justify-content:space-between;font-size:13px;color:var(--text-muted);margin-bottom:4px;}
.city-row span:last-child{font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;}
.page-template-page-compare .compare-hero{padding:32px 0 40px;text-align:center;}
.compare-hero h1{font-size:1.5rem;font-weight:600;margin:0 0 8px;}
.compare-hero p{color:var(--text-muted);margin:0 0 24px;}
.compare-selectors{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px;margin-bottom:32px;}
.compare-select{position:relative;min-width:200px;}
.compare-select input{width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:15px;font-family:inherit;background:var(--bg-card);}
.compare-select input:focus{outline:none;border-color:var(--accent);}
.compare-vs{font-weight:600;color:var(--text-muted);font-size:14px;}
.compare-btn{padding:12px 24px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:15px;font-weight:500;cursor:pointer;font-family:inherit;}
.compare-btn:hover{background:var(--accent-hover);}
.compare-dropdown{position:absolute;left:0;right:0;top:100%;margin-top:4px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);max-height:260px;overflow-y:auto;z-index:50;display:none;}
.compare-dropdown.visible{display:block;}
.compare-dropdown .compare-option{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 14px;border:0;background:transparent;color:var(--text);text-decoration:none;font-size:14px;border-bottom:1px solid var(--border);text-align:left;font-family:inherit;cursor:pointer;}
.compare-dropdown .compare-option:last-child{border-bottom:none;}
.compare-dropdown .compare-option:hover{background:var(--bg);text-decoration:none;}
.compare-option-title{display:inline-flex;align-items:center;gap:8px;color:var(--text);}
.compare-option-meta{color:var(--text-muted);font-size:12px;}
.compare-result{padding-bottom:100px;}
.compare-result .page-desc{text-align:center;}
.compare-banner{background:linear-gradient(135deg,#e8f0fe 0%,#d2e3fc 50%,#cce0fa 100%);border-radius:var(--radius);padding:28px 36px;margin-bottom:28px;border:1px solid rgba(26,115,232,0.2);box-shadow:var(--shadow-md);}
.compare-banner-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.compare-banner-title{font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:0 0 4px;}
.compare-banner-names{font-size:1.25rem;font-weight:500;color:var(--text);margin:0;}
.compare-banner-names strong{font-weight:700;color:var(--accent);}
.compare-banner-visual{font-size:3rem;line-height:1;opacity:.6;}
.chart-summary{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:20px;box-shadow:var(--shadow);}
.chart-summary-title{font-size:1rem;font-weight:600;margin:0 0 20px;color:var(--text);}
.chart-summary-bars{display:flex;flex-direction:column;gap:14px;}
.chart-bar-row{display:grid;grid-template-columns:140px 1fr;align-items:center;gap:16px;}
.chart-label{font-size:13px;color:var(--text-muted);}
.chart-bar-wrap{display:flex;gap:8px;align-items:center;}
.chart-bar{height:24px;border-radius:4px;min-width:20px;display:flex;align-items:center;justify-content:flex-end;padding-right:6px;transition:width .4s ease;}
.chart-bar-value{font-size:11px;font-weight:600;color:#fff;text-shadow:0 0 1px rgba(0,0,0,.5);}
.chart-bar-a{background:linear-gradient(90deg,#1a73e8,#4285f4);}
.chart-bar-b{background:linear-gradient(90deg,#34a853,#5bb974);}
.chart-legend{display:flex;gap:24px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border);font-size:13px;color:var(--text-muted);}
.chart-legend-a::before,.chart-legend-b::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:8px;vertical-align:middle;}
.chart-legend-a::before{background:#1a73e8;}
.chart-legend-b::before{background:#34a853;}
.compare-insight{font-size:15px;color:var(--text-muted);margin:0 0 16px;padding:14px 18px;background:var(--bg);border-radius:var(--radius-sm);border-left:4px solid var(--accent);}
.compare-insight strong{color:var(--text);}
.share-compare-btn{padding:10px 20px;margin-bottom:28px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;color:var(--text);cursor:pointer;font-family:inherit;}
.share-compare-btn:hover{border-color:var(--accent);color:var(--accent);}
.compare-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:24px;box-shadow:var(--shadow);animation:cardFadeIn 0.4s ease backwards;}
.compare-card:nth-child(4){animation-delay:0.05s;}
.compare-card:nth-child(5){animation-delay:0.1s;}
.compare-card:nth-child(6){animation-delay:0.15s;}
.compare-card:nth-child(7){animation-delay:0.2s;}
.compare-card:nth-child(8){animation-delay:0.25s;}
.compare-card:nth-child(9){animation-delay:0.3s;}
.compare-card:nth-child(10){animation-delay:0.35s;}
.compare-card:nth-child(11){animation-delay:0.4s;}
@keyframes cardFadeIn{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:translateY(0);}}
.compare-card-visual{width:100%;height:0;padding-bottom:18%;position:relative;overflow:hidden;background:var(--bg);}
.compare-card-visual img{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:cover;}
.compare-card-visual::after{content:"";position:absolute;left:0;right:0;bottom:0;height:50%;background:linear-gradient(to top,rgba(255,255,255,.95),transparent);pointer-events:none;}
.compare-card-heading{font-size:1rem;font-weight:600;margin:0;padding:16px 20px;background:var(--bg);border-bottom:1px solid var(--border);color:var(--text);}
.compare-card-body{display:flex;flex-wrap:wrap;gap:24px;padding:20px 24px;}
.compare-card-chart-wrap{flex:1 1 45%;min-width:260px;display:flex;align-items:center;justify-content:center;min-height:220px;}
.compare-card-chart-wrap canvas{max-height:240px;max-width:100%;}
.compare-card-table-wrap{flex:1 1 45%;min-width:260px;overflow-x:auto;}
.compare-table{width:100%;border-collapse:collapse;}
.compare-table th,.compare-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border);}
.compare-table th:first-child{width:60%;font-size:12px;font-weight:600;color:var(--text-muted);}
.compare-table .col-a,.compare-table .col-b{width:37.5%;font-weight:600;font-variant-numeric:tabular-nums;}
.compare-table thead th.col-a,.compare-table thead th.col-b{font-size:12px;font-weight:600;color:var(--text-muted);}
.compare-table tbody th{font-weight:500;font-size:14px;color:var(--text);}
.compare-table tr:last-child td,.compare-table tr:last-child th{border-bottom:none;}
.bar-cell{width:24%;min-width:120px;}
.bar-wrap{display:flex;align-items:center;gap:6px;height:28px;}
.bar-wrap .bar-fill{flex:1;min-width:4px;max-width:50%;height:10px;border-radius:5px;}
.bar-fill{height:8px;border-radius:4px;min-width:4px;}
.bar-fill.low{background:#34a853;}
.bar-fill.mid{background:#f9ab00;}
.bar-fill.high{background:#ea4335;}
.site-footer{margin-top:auto;padding:24px 0;border-top:1px solid var(--border);background:var(--bg-card);position:relative;}
body:not(.home) .site-footer{margin-top:50px;}
.footer-inner{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:24px;}
.footer-left .brand-footer{margin-bottom:8px;}
.footer-meta{font-size:13px;color:var(--text-muted);margin:0;}
.footer-links{display:flex;flex-direction:column;gap:6px;}
.footer-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:4px;}
.footer-links .link{font-size:14px;color:var(--text-muted);}
.footer-links .link:hover{color:var(--accent);}
.link.muted{color:var(--text-muted);opacity:.8;}
.footer-back-to-top{width:100%;flex-basis:100%;text-align:center;position:absolute;inset:-60px 0 0 0;}
.back-to-top{display:inline-flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-muted);text-decoration:none;}
.back-to-top:hover{color:var(--accent);text-decoration:none;}
.hidden{display:none !important;}
@media (max-width:640px){
  .header-inner{flex-wrap:wrap;}
  .main-nav{order:3;width:100%;}
  .country-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));}
  .compare-selectors{flex-direction:column;}
}
@media (max-width:900px){
  .quick-facts{grid-template-columns:repeat(2,1fr);}
  .cost-sections-grid .cost-section-card--w100,.cost-sections-grid .cost-section-card--w70,.cost-sections-grid .cost-section-card--w50,.cost-sections-grid .cost-section-card--w33,.cost-sections-grid .cost-section-card--w30,.cost-sections-grid .cost-section-card--w25{flex:0 0 100%;}
  .cost-section.col-half,.cost-section.col-third{flex:0 0 100%;}
  .cost-section-split{flex-direction:column;}
  .cost-section-card,.cost-section-desc{flex:0 0 100%;}
}
@media (max-width:600px){
  .quick-facts{grid-template-columns:1fr;}
  .vs-cards-grid,.vs-cards-more{grid-template-columns:1fr;}
  .cities-grid{grid-template-columns:1fr;}
  .chart-bar-row{grid-template-columns:1fr;gap:8px;}
  .chart-bar-wrap{flex-direction:column;gap:4px;}
  .chart-bar{width:100%;}
}