/* ═══════════════════════════════════════════════════════════════
   ReloWiser — Redesign: "Warm Editorial Clarity"
   Typography: DM Sans + Fraunces
   Palette: Deep navy, warm coral, soft cream
   ═══════════════════════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;0,9..144,700;0,9..144,800;1,9..144,400&display=swap');

*,*::before,*::after{box-sizing:border-box}

:root{--bg:#faf8f5;--surface:rgba(255,255,255,0.92);--surface-strong:#fff;--surface-alt:#f4f1ec;--surface-deep:#1a1f36;--text:#1a1f36;--text-secondary:#4a5168;--muted:#6b7280;--line:rgba(26,31,54,0.1);--line-strong:rgba(26,31,54,0.2);--primary:#e8604c;--primary-dark:#c94a38;--primary-soft:rgba(232,96,76,0.1);--accent:#2d6a5a;--accent-soft:rgba(45,106,90,0.1);--accent-light:#4a9e88;--shadow:0 8px 40px rgba(26,31,54,0.06);--shadow-strong:0 20px 60px rgba(26,31,54,0.1);--radius:16px;--radius-lg:24px;--radius-xl:32px;--container:1180px;--font-body:'DM Sans',system-ui,-apple-system,sans-serif;--font-heading:'Fraunces','Georgia',serif;--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-spring:cubic-bezier(0.34,1.56,0.64,1)}

html{color-scheme:light;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body::before{content:'';position:fixed;inset:0;z-index:-1;opacity:.35;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");pointer-events:none}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid rgba(232,96,76,0.3);outline-offset:2px}
.site-wrapper{min-height:100vh;position:relative;overflow:clip}
.site-wrapper::before,.site-wrapper::after{content:'';position:fixed;border-radius:999px;filter:blur(80px);pointer-events:none;opacity:.22;z-index:-1}
.site-wrapper::before{top:-12rem;left:-8rem;width:28rem;height:28rem;background:rgba(232,96,76,0.2)}
.site-wrapper::after{bottom:6rem;right:-10rem;width:30rem;height:30rem;background:rgba(45,106,90,0.15)}
.container{width:min(calc(100% - 2rem),var(--container));margin:0 auto}
.skip-link{position:absolute;left:-9999px;top:1rem;z-index:20;background:var(--primary);color:#fff;padding:.75rem 1rem;border-radius:10px}
.skip-link:focus{left:1rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideInRight{from{opacity:0;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}

/* HEADER */
.site-header{position:relative;top:0;z-index:20;width:100%;padding-top:1rem;border:0;background:transparent;backdrop-filter:none}
.site-header.is-scrolled .header-shell{box-shadow:0 8px 32px rgba(26,31,54,0.1);background:rgba(255,255,255,0.96);border-color:rgba(26,31,54,0.06)}
.header-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:0}
.header-shell{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:.75rem 1.25rem;border:1px solid rgba(26,31,54,0.06);border-radius:20px;background:rgba(255,255,255,0.82);backdrop-filter:blur(20px);box-shadow:0 4px 24px rgba(26,31,54,0.04);transition:box-shadow .3s ease,background .3s ease,border-color .3s ease}
.brand-block{display:flex;flex-direction:column;gap:.25rem;min-width:0;flex:0 0 auto}
.brand-link{display:inline-flex;align-items:center;min-width:0;font-size:1.32rem;font-weight:700;letter-spacing:.01em}
.brand-logo{display:block;width:clamp(11rem,16vw,15rem);height:auto;max-width:100%;transition:transform .2s var(--ease-out)}
.brand-link:hover .brand-logo{transform:scale(1.02)}
.brand-tagline{margin:0;max-width:26rem;color:var(--muted);font-size:.85rem;letter-spacing:.01em}
.site-nav{display:flex;align-items:center;gap:.9rem}
.nav-list{display:flex;align-items:center;gap:.2rem;list-style:none;padding:.2rem;margin:0;border-radius:999px;background:rgba(26,31,54,0.04);border:1px solid rgba(26,31,54,0.04)}
.nav-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:.45rem .85rem;border-radius:999px;color:var(--text-secondary);font-size:.9rem;font-weight:500;letter-spacing:-.01em;transition:all .2s var(--ease-out);white-space:nowrap}
.nav-link.is-active,.nav-link:hover{background:rgba(255,255,255,0.95);color:var(--text);box-shadow:0 4px 14px rgba(26,31,54,0.06)}
.nav-actions{display:flex;align-items:center;gap:.75rem}
.language-switcher--mobile{display:none;flex:0 0 auto}
.language-switcher--desktop{display:block}
.menu-toggle{display:none;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid rgba(26,31,54,0.08);background:rgba(255,255,255,0.95);color:var(--text);border-radius:14px;padding:0;cursor:pointer;box-shadow:0 4px 16px rgba(26,31,54,0.06);transition:transform .2s var(--ease-out),box-shadow .2s ease}
.menu-toggle:hover{transform:translateY(-1px)}
.menu-toggle-icon{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:20px}
.menu-toggle-line{display:block;width:100%;height:2.5px;border-radius:999px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.menu-toggle[aria-expanded="true"] .menu-toggle-line:nth-child(1){transform:translateY(6px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-toggle-line:nth-child(2){opacity:0}
.menu-toggle[aria-expanded="true"] .menu-toggle-line:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

/* BUTTONS */
.button{display:inline-flex;align-items:center;justify-content:center;position:relative;min-height:46px;padding:.75rem 1.25rem;border-radius:12px;border:1px solid transparent;font-family:var(--font-body);font-weight:600;font-size:.95rem;letter-spacing:-.01em;cursor:pointer;transition:all .2s var(--ease-out);box-shadow:0 4px 16px rgba(26,31,54,0.05)}
.button:hover{transform:translateY(-2px)}
.button-primary{background:linear-gradient(135deg,var(--primary) 0%,#d4503e 100%);color:#fff;box-shadow:0 8px 28px rgba(232,96,76,0.25)}
.button-primary:hover{background:linear-gradient(135deg,var(--primary-dark) 0%,#b8412f 100%);box-shadow:0 12px 32px rgba(232,96,76,0.3)}
.button-primary-glow::after{content:'';position:absolute;inset:1px;border-radius:inherit;border:1px solid rgba(255,255,255,0.2);pointer-events:none}
.button-secondary{background:rgba(255,255,255,0.85);border-color:rgba(26,31,54,0.1);color:var(--text);backdrop-filter:blur(8px)}
.button-secondary:hover,.link-chip:hover,.inline-card-link:hover,.related-links-list a:hover,.footer-column a:hover,.text-link:hover{color:var(--primary-dark)}
.button-secondary-quiet{background:rgba(255,255,255,0.7)}
.nav-actions .button{min-height:42px;min-width:10rem;padding-inline:1rem}
.button-header-cta{font-size:.9rem}

/* TYPOGRAPHY */
h1,h2,h3{margin-top:0;font-family:var(--font-heading);line-height:1.15;color:var(--text);letter-spacing:-.02em}
h1{margin-bottom:1rem;font-size:clamp(2.2rem,4.5vw,3.8rem);font-weight:700;line-height:1.08;letter-spacing:-.03em}
h2{margin-bottom:.85rem;font-size:clamp(1.4rem,2.2vw,2rem);font-weight:600}
h3{margin-bottom:.6rem;font-size:1.15rem;font-weight:600}
p{margin-top:0}
.eyebrow{margin:0 0 .8rem;color:var(--primary);font-family:var(--font-body);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.mini-label{margin:0 0 .35rem;color:var(--accent);font-family:var(--font-body);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}

/* LAYOUT */
.site-content{padding-bottom:5rem}
.hero,.page-hero{padding:4.5rem 0 2.5rem}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,0.9fr);gap:1.7rem;align-items:start}
.hero-copy{position:relative;z-index:1;display:grid;gap:1.15rem}
.hero-description,.page-description{max-width:41rem;font-size:1.12rem;color:var(--text-secondary);line-height:1.72}
.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.hero-actions--home{gap:.78rem;margin-top:.1rem}
.content-section,.callout-section,.cta-strip{padding:1.1rem 0}
.section-heading{margin-bottom:1rem}
.home-section-heading{margin-bottom:.4rem}
.section-intro{color:var(--text-secondary);max-width:48rem;font-size:1.02rem;line-height:1.72}
.stack-xs{display:grid;gap:.35rem}.stack-sm{display:grid;gap:.75rem}.stack-md{display:grid;gap:1rem}.stack-lg{display:grid;gap:2rem}
.stack-sm h2{color:#913a3a}
.section-heading-row,.subsection-header{display:flex;align-items:end;justify-content:space-between;gap:1rem}
.subsection-block{display:grid;gap:1rem}

/* CARDS */
.info-card,.data-card,.slim-card,.guide-card,.guide-section-card,.guide-highlight-card,.guide-cta-card,.guide-header-card,.panel-card,.callout-card,.cta-strip-inner,.table-wrap,.related-links-card,.empty-state-card,.home-card,.hero-visual-card{background:linear-gradient(180deg,rgba(255,255,255,0.95),rgba(255,255,255,0.85));border:1px solid rgba(26,31,54,0.07);border-radius:var(--radius-lg);box-shadow:var(--shadow);backdrop-filter:blur(8px);transition:transform .3s var(--ease-out),box-shadow .3s var(--ease-out)}
.info-card:hover,.guide-card:hover,.home-card:hover,.data-card:hover,.callout-card:hover,.related-links-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-strong)}
.panel-card{padding:1.4rem}
.panel-label{margin-bottom:.7rem;color:var(--accent);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.panel-list{margin:0;padding-left:1.15rem;color:var(--text-secondary)}
.card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.15rem}
.card-grid--tools{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.tool-index-card{display:flex;flex-direction:column;gap:.85rem;height:100%}
.tool-index-card-badge{display:inline-flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border-radius:999px;background:rgba(232,96,76,0.10);color:var(--primary-dark);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.card-grid--tools .tool-index-card{min-width:0}.card-grid--tools .tool-index-card h2{margin-bottom:.25rem;font-size:clamp(1rem,1.45vw,1.22rem);line-height:1.08;overflow-wrap:anywhere;word-break:break-word}
.card-grid--tools .tool-index-card p{margin:0;color:var(--text-secondary)}
.card-grid--tools .tool-index-card .inline-card-cta{margin-top:auto}
.tool-card-group{display:grid;gap:1rem}.tool-card-group+.tool-card-group{padding-top:.4rem;border-top:1px solid rgba(26,31,54,.06)}.tool-card-group__intro{max-width:52rem}.tool-card-group__intro h2{margin:.1rem 0 .3rem;font-size:clamp(1.45rem,2.1vw,1.9rem);line-height:1.08}.tool-card-group__intro p{margin:0}
.card-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}
.card-grid--three,.card-grid--compact{grid-template-columns:repeat(3,minmax(0,1fr))}
.info-card{padding:1.35rem}
.info-card,.data-card,.guide-card,.guide-section-card,.guide-highlight-card,.guide-cta-card,.guide-header-card{display:flex;flex-direction:column;gap:.85rem}
.info-card>:last-child,.data-card>:last-child,.guide-card>:last-child,.guide-section-card>:last-child,.guide-highlight-card>:last-child,.guide-cta-card>:last-child,.guide-header-card>:last-child{margin-bottom:0}
.info-card p{margin-bottom:0;color:var(--text-secondary)}
.callout-card,.cta-strip-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.4rem}
.info-card.listing-card--choice{border-left:3px solid var(--accent-light)}
.data-card-grid{gap:1rem}
.two-col-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.data-card,.slim-card{padding:1.25rem}
.data-card-head{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:1rem}
.card-kicker{display:inline-flex;align-items:center;gap:.55rem;margin-bottom:.35rem}
.card-kicker .mini-label{margin:0}

/* ICONS */
.icon-badge{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:14px;background:linear-gradient(135deg,rgba(45,106,90,0.12),rgba(232,96,76,0.08));border:1px solid rgba(45,106,90,0.15);box-shadow:inset 0 1px 0 rgba(255,255,255,0.8);flex:0 0 auto}
.icon-badge svg{width:1.45rem;height:1.45rem;overflow:visible;color:var(--accent)}
.data-card-icon{width:2.15rem;height:2.15rem;border-radius:12px}
.data-card-icon svg{width:1.22rem;height:1.22rem}
.home-card-icon{width:3rem;height:3rem;border-radius:16px;background:linear-gradient(135deg,rgba(45,106,90,0.12),rgba(232,96,76,0.08));border-color:rgba(45,106,90,0.15);box-shadow:inset 0 1px 0 rgba(255,255,255,0.82),0 8px 20px rgba(45,106,90,0.06)}
.home-card-icon svg{width:1.65rem;height:1.65rem;color:var(--accent)}

/* PILLS & CHIPS */
.pill{display:inline-flex;align-items:center;min-height:30px;padding:.2rem .7rem;border-radius:999px;background:var(--surface-alt);border:1px solid rgba(26,31,54,0.06);color:var(--text-secondary);font-size:.82rem;font-weight:600;transition:transform .2s var(--ease-out),box-shadow .2s ease}
.pill-highlight{background:var(--primary-soft);color:var(--primary-dark)}
.pill-muted{background:var(--surface-alt)}
.link-chip-row,.cta-group{display:flex;flex-wrap:wrap;gap:.75rem}
.link-chip{display:inline-flex;align-items:center;min-height:42px;padding:.7rem 1rem;border:1px solid rgba(26,31,54,0.08);border-radius:999px;background:rgba(255,255,255,0.85);font-weight:600;transition:all .2s var(--ease-out);word-break:break-word}
.link-chip:hover{border-color:rgba(232,96,76,0.2);box-shadow:0 6px 20px rgba(26,31,54,0.06);transform:translateY(-2px)}
.text-link{color:var(--primary);font-weight:700}
.data-amount{font-size:1.1rem;font-weight:700}

/* META LISTS */
.meta-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;margin:0}
.meta-list div{padding:.85rem 1rem;background:var(--surface);border:1px solid var(--line);border-radius:12px}
.meta-list dt{margin:0 0 .25rem;color:var(--muted);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
.meta-list dd{margin:0;font-weight:600}
.hero-meta-list{max-width:58rem}
.compact-meta-list{grid-template-columns:repeat(3,minmax(0,1fr))}
.single-row-meta{grid-template-columns:repeat(2,minmax(0,1fr))}

/* TABLES */
.table-wrap{overflow-x:auto}
.data-table{width:100%;border-collapse:collapse;min-width:700px}
.data-table th,.data-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.data-table thead th{background:var(--surface-alt);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}
.data-table tbody tr:hover td{background:rgba(244,241,236,0.6)}
.table-note,.item-meta-inline{margin-top:.35rem;color:var(--muted);font-size:.92rem}

/* HOMEPAGE HERO */
.hero-home{position:relative;padding:5.7rem 0 2.45rem;animation:fadeIn .6s ease}
.hero-grid--home{grid-template-columns:minmax(0,1.1fr) minmax(340px,0.9fr);gap:1.7rem;align-items:start}
.hero-copy h1{max-width:12.5ch;line-height:1.06;animation:fadeUp .7s var(--ease-out) .1s both}
.hero-description{max-width:41rem;font-size:1.14rem;line-height:1.76;color:var(--text-secondary);animation:fadeUp .7s var(--ease-out) .2s both}
.hero-visual-wrap{position:relative;max-width:34rem;margin-left:auto;animation:slideInRight .8s var(--ease-out) .3s both}
.hero-visual-card{position:relative;display:grid;gap:0;min-height:100%;border-radius:var(--radius-xl);overflow:hidden}
.hero-visual-card--assessment{min-height:auto;grid-template-rows:auto 1fr;background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(250,248,245,0.94))}
.hero-visual-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(232,96,76,0.06),transparent 40%);pointer-events:none}
.hero-visual-media{position:relative;min-height:14.6rem;background:linear-gradient(180deg,rgba(244,241,236,0.9),rgba(226,220,212,0.5))}
.hero-visual-media::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,31,54,0.01) 0%,rgba(26,31,54,0.08) 100%);pointer-events:none}
.hero-visual-image{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.hero-visual-media-badge{position:absolute;left:.88rem;top:.88rem;z-index:1;display:inline-flex;align-items:center;min-height:1.9rem;padding:.34rem .68rem;border-radius:999px;background:rgba(255,255,255,0.92);border:1px solid rgba(26,31,54,0.08);color:var(--text);font-size:.78rem;font-weight:700;box-shadow:0 4px 16px rgba(26,31,54,0.06)}
.hero-visual-body{position:relative;padding:1.12rem 1.18rem 1.24rem}
.hero-visual-title{margin-bottom:0;font-size:clamp(1.12rem,1.55vw,1.34rem)}
.hero-visual-scenario{margin:0;color:var(--primary);font-weight:700;font-size:.93rem}
.hero-visual-summary{margin:0;color:var(--text-secondary);font-size:.98rem;line-height:1.62}
.hero-visual-metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem}
.hero-visual-metric-card{padding:.82rem .86rem;border-radius:14px;border:1px solid rgba(26,31,54,0.06);background:rgba(255,255,255,0.8)}
.hero-visual-metric-card .mini-label{color:var(--accent)}
.hero-visual-metric-card strong{display:block;margin-top:.2rem;font-size:1.02rem;color:var(--text)}
.hero-visual-notes{padding-top:.2rem}
.summary-strip-items--dense.hero-visual-inline-metrics{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
.hero-scenario-list{animation:fadeUp .7s var(--ease-out) .35s both}
.hero-scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.72rem}
.hero-scenario-grid--lighter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.hero-scenario-line{display:grid;gap:.3rem;padding:.9rem 1rem;border-radius:14px;background:rgba(255,255,255,0.8);border:1px solid rgba(26,31,54,0.06);transition:all .2s var(--ease-out)}
.hero-scenario-line:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(26,31,54,0.06);border-color:rgba(232,96,76,0.15)}
.hero-scenario-line strong{font-size:.97rem;color:var(--text)}
.hero-scenario-line span{color:var(--text-secondary);font-size:.93rem;line-height:1.52}
.hero-scenarios{padding:.9rem .95rem .98rem;border:1px solid rgba(26,31,54,0.06);border-radius:20px;background:rgba(255,255,255,0.6);box-shadow:0 4px 16px rgba(26,31,54,0.03)}
.hero-scenarios-title{margin-bottom:.12rem;color:var(--text-secondary)}
.hero-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.hero-stat-card{padding:.88rem .92rem;border-radius:16px;background:rgba(255,255,255,0.55);border:1px solid rgba(26,31,54,0.06);box-shadow:0 4px 16px rgba(26,31,54,0.03)}
.hero-stat-card strong{display:block;margin-bottom:.3rem;font-size:1rem;letter-spacing:-.02em}
.hero-stat-card span{color:var(--text-secondary);font-size:.9rem;line-height:1.5}
.hero-chip-row{display:flex;flex-wrap:wrap;gap:.65rem}
.hero-chip{display:inline-flex;align-items:center;min-height:2.2rem;padding:.5rem .85rem;border-radius:999px;background:rgba(255,255,255,0.8);border:1px solid rgba(26,31,54,0.06);color:var(--text-secondary);box-shadow:0 4px 14px rgba(26,31,54,0.04);font-size:.92rem;font-weight:600}

/* HOMEPAGE SECTIONS */
.home-section{position:relative;padding:1.35rem 0}
.home-section .container{padding:2rem 2rem 2.1rem;border-radius:var(--radius-xl);background:rgba(255,255,255,0.5);border:1px solid rgba(26,31,54,0.04);box-shadow:0 8px 32px rgba(26,31,54,0.03);backdrop-filter:blur(8px)}
.home-section--questions .container{background:linear-gradient(180deg,rgba(255,255,255,0.65),rgba(255,255,255,0.45))}
.home-section--tools .container{background:linear-gradient(180deg,rgba(250,248,245,0.95),rgba(255,255,255,0.7))}
.home-section--trust .container,.home-bottom-cta .cta-strip-inner--home{background:linear-gradient(135deg,#1a1f36 0%,#2a304a 100%);color:#e2e8f0}
.home-section--trust .eyebrow,.home-bottom-cta .eyebrow{color:var(--accent-light)}
.home-section--trust .section-intro,.home-bottom-cta p,.home-section--trust .info-card p{color:rgba(226,232,240,0.75)}
.home-section--explore .container{background:linear-gradient(180deg,rgba(255,255,255,0.7),rgba(244,241,236,0.6))}
.home-card{position:relative;padding:1.4rem;border-radius:20px;border:1px solid rgba(26,31,54,0.06);background:linear-gradient(180deg,rgba(255,255,255,0.92),rgba(255,255,255,0.82));box-shadow:0 8px 28px rgba(26,31,54,0.04);overflow:hidden}
.home-card::before{content:'';position:absolute;inset:auto auto 0 0;width:6rem;height:6rem;border-radius:999px;background:radial-gradient(circle,rgba(232,96,76,0.08),transparent 68%);transform:translate(-28%,34%)}
.home-card h3{margin-bottom:.15rem;font-size:1.16rem}
.home-card p{color:var(--text-secondary)}
.home-tool-card{display:flex;flex-direction:column;justify-content:space-between;gap:1.05rem;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(250,248,245,0.88));border-color:rgba(45,106,90,0.1)}
.tool-card-meta{margin:0;color:var(--text-secondary);font-size:.97rem;line-height:1.62}
.tool-card-meta strong{color:var(--text)}
.home-card--trust{background:linear-gradient(180deg,rgba(255,255,255,0.08),rgba(255,255,255,0.04));border-color:rgba(255,255,255,0.08);box-shadow:none}
.home-card--trust::before{background:radial-gradient(circle,rgba(74,158,136,0.15),transparent 70%)}
.info-card.home-card--trust{background:linear-gradient(180deg,rgba(255,255,255,0.95),rgba(250,248,245,0.9));border-color:rgba(45,106,90,0.12);box-shadow:0 12px 36px rgba(26,31,54,0.1);color:var(--text)}
.home-section--trust .info-card.home-card--trust h3,.home-section--trust .info-card.home-card--trust p,.home-section--trust .info-card.home-card--trust li,.home-section--trust .info-card.home-card--trust .mini-label{color:var(--text)}
.home-section--trust .info-card.home-card--trust p{color:var(--text-secondary)}
.home-section--trust .info-card.home-card--trust .mini-label{color:var(--muted)}
.home-section--trust .info-card.home-card--trust .home-card-icon{background:linear-gradient(135deg,rgba(45,106,90,0.12),rgba(232,96,76,0.08));border-color:rgba(45,106,90,0.15);color:var(--accent)}
.inline-card-cta,.home-card-cta{margin-top:auto;width:fit-content;min-height:2.85rem;padding:.78rem 1rem;background:linear-gradient(180deg,rgba(244,241,236,0.96),rgba(235,230,222,0.92));border:1px solid rgba(232,96,76,0.15);color:var(--primary-dark);box-shadow:0 6px 18px rgba(232,96,76,0.06)}
.inline-card-cta::after,.home-card-cta::after{content:'→';margin-left:.5rem;font-size:.95em;transition:transform .2s var(--ease-out)}
.inline-card-cta:hover,.home-card-cta:hover{background:linear-gradient(135deg,var(--primary) 0%,#d4503e 100%);border-color:transparent;color:#fff;box-shadow:0 10px 28px rgba(232,96,76,0.2)}
.inline-card-cta:hover::after,.home-card-cta:hover::after{transform:translateX(3px)}

/* RESULT PREVIEW */
.home-section--result-preview .container{background:linear-gradient(180deg,rgba(244,241,236,0.9),rgba(255,255,255,0.84));padding-bottom:1.85rem}
.home-result-preview{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,0.95fr);gap:.95rem;align-items:stretch}
.home-result-panel,.home-result-verdict,.home-result-signals{padding:1.08rem 1.12rem;border-radius:20px;border:1px solid rgba(26,31,54,0.06);background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(250,248,245,0.9));box-shadow:0 8px 32px rgba(26,31,54,0.04)}
.home-result-panel-header h3,.home-result-verdict h3,.home-result-signals h3{margin-bottom:.25rem;font-size:1.08rem}
.home-result-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.78rem;margin-top:.9rem}
.home-result-summary-card{padding:.92rem;border-radius:16px;background:rgba(255,255,255,0.85);border:1px solid rgba(26,31,54,0.06)}
.home-result-summary-label{display:inline-block;margin-bottom:.38rem;color:var(--muted);font-size:.78rem;font-weight:600}
.home-result-summary-card strong{display:block;margin-bottom:.45rem;font-size:1.25rem;font-family:var(--font-heading);letter-spacing:-.03em}
.home-result-summary-card p,.home-result-verdict p,.home-result-signals li{color:var(--text-secondary);font-size:.96rem;line-height:1.56}
.home-result-aside{display:grid;gap:1rem;align-content:start}
.home-result-verdict{background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(244,241,236,0.92))}
.home-result-verdict .mini-label{color:var(--accent)}
.check-list{margin:0;padding-left:1.1rem;display:grid;gap:.58rem}
.check-list--compact{gap:.5rem}
.check-list--compact li{color:var(--text-secondary);line-height:1.58}

/* EXPLORE */
.home-explore-layout{display:grid;grid-template-columns:minmax(0,1.78fr) minmax(240px,0.72fr);gap:1.65rem;align-items:start}
.home-explore-subhead h3{margin:0;font-size:1.08rem;color:var(--text)}
.home-explore-subhead{padding-bottom:.25rem}
.home-explore-secondary-block{padding-left:.45rem;border-left:1px solid rgba(26,31,54,0.06)}
.home-explore-grid--secondary{grid-template-columns:1fr;gap:.85rem}
.home-card--explore-secondary{padding:1rem 1rem 1.05rem;box-shadow:0 6px 20px rgba(26,31,54,0.03);background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(250,248,245,0.9))}
.home-card--explore-secondary .home-card-icon{width:2.8rem;height:2.8rem}
.home-card--explore-secondary h3{font-size:1.02rem}
.home-card--explore-secondary p{font-size:.97rem;line-height:1.6}

/* BOTTOM CTA */
.home-bottom-cta{padding-top:2rem}
.cta-strip-inner--home{position:relative;overflow:hidden;border-radius:var(--radius-xl);box-shadow:0 20px 60px rgba(26,31,54,0.18);padding:2.5rem}
.cta-strip-inner--home::before,.cta-strip-inner--home::after{content:'';position:absolute;border-radius:999px;pointer-events:none}
.cta-strip-inner--home::before{top:-4rem;right:-3rem;width:12rem;height:12rem;background:radial-gradient(circle,rgba(74,158,136,0.2),transparent 70%)}
.cta-strip-inner--home::after{bottom:-4rem;left:-4rem;width:13rem;height:13rem;background:radial-gradient(circle,rgba(232,96,76,0.15),transparent 68%)}
.cta-group--home{justify-content:flex-end}
.home-bottom-cta .cta-strip-inner{gap:1.25rem}
.home-bottom-cta .cta-group{justify-content:flex-end}

/* FOOTER */
.site-footer{position:relative;margin-top:3rem;padding:2.9rem 0 2.85rem;border-top:1px solid rgba(26,31,54,0.06);background:linear-gradient(180deg,rgba(250,248,245,0.86),rgba(244,241,236,0.98))}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.28fr) repeat(3,minmax(0,0.78fr));gap:1.35rem 1.4rem;align-items:start}
.footer-brand-row{display:flex;align-items:center;gap:.9rem;margin-bottom:.8rem}
.brand-mark{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:700;color:var(--primary)}
.brand-mark--footer{width:2.35rem;height:2.35rem;font-size:1.1rem;border-radius:10px;background:var(--primary-soft)}
.footer-summary{padding-right:.65rem}
.footer-summary h2,.footer-column h3{margin-bottom:.7rem}
.footer-summary p,.footer-meta,.footer-column a,.footer-helper-text{color:var(--text-secondary);font-size:.99rem;line-height:1.7}
.footer-column{padding-left:.4rem;border-left:1px solid rgba(26,31,54,0.06)}
.footer-column ul{list-style:none;padding:0;margin:0;display:grid;gap:.6rem}
.footer-column li+li{margin-top:0}
.footer-column a{color:var(--text-secondary);transition:color .2s ease}
.footer-column a:hover{color:var(--primary)}
.footer-meta{display:flex;flex-wrap:wrap;gap:1rem;padding-top:1.4rem;font-size:.92rem;color:var(--muted)}
.footer-helper,.footer-key-actions{margin-top:1.15rem}
.footer-key-actions-list{display:flex;flex-wrap:wrap;gap:.78rem}
.footer-key-action{display:inline-flex;align-items:center;justify-content:center;min-height:2.6rem;padding:.65rem 1rem;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(244,241,236,0.92));border:1px solid rgba(26,31,54,0.06);color:var(--text);text-decoration:none;font-weight:700;font-size:.95rem;box-shadow:0 4px 16px rgba(26,31,54,0.04);transition:all .2s var(--ease-out)}
.footer-key-action:hover{color:var(--primary-dark);border-color:rgba(232,96,76,0.2);transform:translateY(-1px)}

/* FORMS & TOOLS */
.tool-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,0.7fr);gap:1.3rem;align-items:start}
.result-support-layout{grid-template-columns:minmax(0,1.25fr) minmax(250px,0.75fr)}
.tool-form-wrap,.tool-sidebar{min-width:0}
.sticky-card{position:sticky;top:6rem}
.align-start{align-items:flex-start}
.tool-form{display:flex;flex-direction:column;gap:1.1rem}
.form-grid{display:grid;gap:1rem}
.form-field{display:flex;flex-direction:column;gap:.38rem}
.form-field label{font-size:.95rem;font-weight:600;color:var(--text);line-height:1.42}
.form-field select,.form-field input,.form-field textarea{width:100%;min-height:46px;border:1px solid rgba(26,31,54,0.12);border-radius:12px;background:rgba(255,255,255,0.9);color:var(--text);padding:.8rem .95rem;font:inherit;font-size:.95rem;box-shadow:inset 0 1px 0 rgba(255,255,255,0.55);transition:border-color .2s ease,box-shadow .2s ease}
.form-field textarea{min-height:160px;resize:vertical}
.form-field select:hover,.form-field input:hover,.form-field textarea:hover,.form-field select:focus,.form-field input:focus,.form-field textarea:focus{border-color:rgba(232,96,76,0.4);box-shadow:0 0 0 4px rgba(232,96,76,0.08);outline:none}
.form-field.has-error{padding:.72rem .72rem .82rem;border:1px solid rgba(209,67,67,0.22);border-radius:14px;background:rgba(255,244,244,0.72)}
.form-field.has-error label{color:#9f2424}
.form-field.has-error select,.form-field.has-error input,.form-field.has-error textarea{border-color:#d14343;box-shadow:0 0 0 4px rgba(209,67,67,0.08)}
.field-error{margin:0;color:#b42d2d;font-size:.9rem;font-weight:600}
.form-actions{display:flex;flex-wrap:wrap;gap:.75rem}
.form-alert{border:1px solid rgba(209,67,67,0.25);background:rgba(255,235,235,0.75);color:#7d1b1b;border-radius:14px;padding:.9rem 1rem}
.form-alert-success{border-color:rgba(45,106,90,0.24);background:rgba(233,250,240,0.9);color:#155b39}
.button-form-submit{min-height:48px;min-width:15rem;padding:.85rem 1.25rem;border-radius:14px;font-weight:700;letter-spacing:.01em;box-shadow:0 8px 28px rgba(232,96,76,0.2)}
.button-form-submit:hover,.button-form-submit:focus-visible{transform:translateY(-1px);box-shadow:0 10px 32px rgba(232,96,76,0.25)}
.form-outcome-hint{margin:0;padding:.82rem .95rem;border-radius:14px;background:rgba(45,106,90,0.06);border:1px solid rgba(45,106,90,0.12);font-size:.96rem;line-height:1.62;color:var(--text-secondary)}
.tool-explainer{display:grid;gap:.5rem;margin-bottom:1rem;padding:1rem 1.05rem;border:1px solid rgba(26,31,54,0.06);border-radius:16px;background:linear-gradient(180deg,rgba(250,248,245,0.96),rgba(255,255,255,0.98))}
.tool-explainer-lead{margin:0;font-size:1rem;line-height:1.45;font-weight:700;color:var(--text)}
.tool-explainer-copy{display:grid;gap:.45rem}
.tool-explainer-copy p{margin:0;font-size:.98rem;line-height:1.68;color:var(--text-secondary)}
.tool-form-group-heading{grid-column:1/-1;display:flex;align-items:flex-end;margin-top:.15rem;padding-top:.85rem;border-top:1px solid var(--line)}
.tool-form-group-heading:first-child{margin-top:0;padding-top:0;border-top:0}
.tool-form-group-title{margin:0;font-size:.98rem;line-height:1.4;color:var(--text)}
.tool-form-group-copy{margin:.2rem 0 0;color:var(--muted);font-size:.93rem;line-height:1.55}
.form-label-row{display:inline-flex;align-items:center;gap:.45rem;flex-wrap:wrap}
.field-optional{display:inline-flex;align-items:center;min-height:1.45rem;padding:.12rem .48rem;border-radius:999px;background:rgba(45,106,90,0.08);color:var(--accent);font-size:.77rem;font-weight:700;letter-spacing:.02em}
.input-with-inline-icon{position:relative}
.input-inline-icon{position:absolute;left:.92rem;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:1.48rem;height:1.48rem;color:#2f8f57;pointer-events:none;z-index:1}
.input-inline-icon svg{width:80%;height:80%}
.form-field input.has-leading-icon{padding-left:3.3rem;border-color:rgba(47,143,87,0.24);background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(243,250,245,0.96))}
.form-field input.has-leading-icon:hover,.form-field input.has-leading-icon:focus{border-color:rgba(47,143,87,0.42);box-shadow:0 0 0 4px rgba(47,143,87,0.10)}
.tool-decision-strip-block{display:grid;gap:.95rem}
.tool-strip-heading{display:grid;gap:.35rem;max-width:58rem}
.tool-strip-heading h2{margin:0}
.tool-strip-heading p{margin:0;color:var(--text-secondary);font-size:1rem;line-height:1.68}
.tool-decision-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.tool-decision-card{gap:.72rem;min-height:100%;border:1px solid rgba(26,31,54,0.06);background:linear-gradient(180deg,rgba(250,248,245,0.96),rgba(255,255,255,0.98))}
.tool-card-lead{margin:0;color:var(--text);font-size:1rem;line-height:1.62}
.tool-card-points{gap:.62rem}
.tool-card-points li{color:var(--text-secondary);font-size:.96rem;line-height:1.62}
.tool-result-guidance-block{margin-bottom:.2rem}
.tool-result-guidance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.tool-result-guidance-card{gap:.72rem}
.budget-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.budget-card{padding:1.35rem}
.budget-card h3{margin-bottom:.5rem;font-size:clamp(1.6rem,2vw,2.2rem);font-family:var(--font-heading)}
.budget-card-active{border-color:rgba(232,96,76,0.25);box-shadow:0 12px 36px rgba(232,96,76,0.1)}
.pill-group{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem}
.plain-list{margin:0;padding-left:1.15rem}
.compact-list{display:grid;gap:.5rem}
.small-muted{margin:0;color:var(--text-secondary);font-size:.95rem}
.emphasis-card,.budget-card-active,.score-card{background:linear-gradient(180deg,rgba(244,241,236,0.96),rgba(255,255,255,0.84))}
.data-table-compact td,.data-table-compact th{padding-top:.8rem;padding-bottom:.8rem}
.is-hidden{display:none}
.compare-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.comparison-income-field{grid-column:1/-1}
.comparison-table td>strong,.comparison-table th{display:block}
.risk-flag-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.verdict-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.score-card{display:flex;flex-direction:column;justify-content:center}
.score-value{margin:.15rem 0 .35rem;font-size:clamp(2rem,3vw,2.8rem);font-family:var(--font-heading);line-height:1}

/* TRUST BADGES */
.trust-source-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:999px;font-size:.8rem;font-weight:600;line-height:1.2;background:rgba(26,31,54,0.05);color:var(--text);box-shadow:0 2px 8px rgba(26,31,54,0.03)}
.trust-source-badge--official{background:rgba(45,106,90,0.1);color:#166534}
.trust-source-badge--reported{background:rgba(59,130,246,0.1);color:#1d4ed8}
.trust-source-badge--estimated{background:rgba(245,158,11,0.12);color:#92400e}
.trust-source-badge--manual{background:rgba(168,85,247,0.1);color:#6b21a8}
.trust-source-badge--derived{background:rgba(45,106,90,0.1);color:#0f766e}
.trust-last-updated{display:inline-flex;align-items:baseline;gap:.35rem;color:var(--muted);font-size:.88rem}
.trust-last-updated--with-label{flex-wrap:wrap}
.trust-meta-label{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}
.trust-meta-value{color:var(--text)}
.trust-note-list li+li{margin-top:.45rem}
.trust-disclaimer{margin-top:.5rem}
.trust-basis-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.trust-basis-card{display:flex;flex-direction:column;gap:.6rem}
.trust-inline-meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.trust-basis-intro{margin-bottom:1rem}



/* OFFER ANALYZER HIERARCHY REWORK */
.tool-page-section--offer .tool-layout--offer{gap:1.45rem;align-items:start}
.tool-workzone-card--offer{position:relative;padding:1.55rem 1.6rem;border:1px solid rgba(232,96,76,0.16);background:linear-gradient(180deg,rgba(255,255,255,0.99),rgba(249,245,240,0.96));box-shadow:0 18px 40px rgba(26,31,54,0.08);overflow:hidden}
.tool-workzone-card--offer::before{content:'';position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--primary),rgba(232,96,76,0.3))}
.tool-workzone-header{padding-bottom:.2rem}
.tool-workzone-card--offer .tool-form-group-heading{margin-top:.35rem;padding-top:1rem;border-top:1px solid rgba(26,31,54,0.08)}
.tool-workzone-card--offer .form-field select,.tool-workzone-card--offer .form-field input,.tool-workzone-card--offer .form-field textarea{background:rgba(255,255,255,0.995);border:1.5px solid rgba(26,31,54,0.20)}
.tool-workzone-card--offer .form-outcome-hint{background:linear-gradient(180deg,rgba(205,147,97,0.10),rgba(255,255,255,0.88));border-color:rgba(170,116,73,0.16)}
.tool-workzone-card--offer .button-form-submit{width:100%;box-shadow:0 14px 30px rgba(170,105,60,0.20)}
.tool-sidecard--offer{padding:1rem 1.05rem;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(250,248,245,0.92));border-color:rgba(26,31,54,0.05);box-shadow:0 8px 22px rgba(26,31,54,0.04)}
.tool-sidecard--offer h2{font-size:1.08rem}
.tool-sidecard--offer .plain-list li{color:var(--text-secondary);line-height:1.6}
.tool-sidecard--trust{background:linear-gradient(180deg,rgba(248,250,255,0.98),rgba(255,255,255,0.92));border-color:rgba(112,141,183,0.14)}
.tool-workzone-card--offer:hover,.tool-sidecard--offer:hover,.offer-decision-card:hover,.offer-score-card:hover,.offer-risk-card:hover,.offer-related-links-card:hover{transform:none}

.tool-page-faq--offer .faq-section{padding:1.15rem 1.2rem;border:1px solid rgba(26,31,54,0.06);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,0.92),rgba(250,248,245,0.88));box-shadow:0 10px 30px rgba(26,31,54,0.04)}
.tool-page-faq--offer .faq-section h2{font-size:1.4rem}

.next-step-block--offer{padding:1.15rem 1.2rem;border:1px solid rgba(26,31,54,0.06);border-radius:20px;background:linear-gradient(180deg,rgba(250,248,245,0.94),rgba(255,255,255,0.9));box-shadow:0 12px 32px rgba(26,31,54,0.05)}
.next-step-layout--offer{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(280px,0.82fr);gap:1rem;align-items:start}
.next-step-main--offer{padding:1.2rem 1.22rem;border:1px solid rgba(232,96,76,0.14);background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(249,244,239,0.95));box-shadow:0 12px 30px rgba(232,96,76,0.08)}
.next-step-main--offer .button{width:fit-content;min-width:12rem}
.next-step-main--offer .mini-label{color:var(--accent)}
.next-step-secondary-item--offer{padding:1rem 1.05rem;background:rgba(255,255,255,0.86);border-color:rgba(26,31,54,0.05);box-shadow:none}
.next-step-secondary-item--offer .text-link{display:inline-flex;align-items:center;gap:.35rem}
.next-step-secondary-item--offer .text-link::after{content:'→';font-size:.92em}

.tool-results-section--offer{padding-top:1.45rem}
.tool-results-frame--offer{padding:clamp(1.1rem,2vw,1.5rem);border-color:rgba(112,141,183,0.18);background:linear-gradient(180deg,rgba(250,252,255,0.98),rgba(255,255,255,0.98));box-shadow:0 20px 48px rgba(15,23,42,0.08)}
.offer-result-lead{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,0.8fr);gap:1rem;align-items:start;padding:1.2rem 1.25rem;border-radius:22px;border:1px solid rgba(26,31,54,0.06);background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(246,249,255,0.96))}
.offer-result-lead--safe{border-color:rgba(45,106,90,0.16);background:linear-gradient(180deg,rgba(240,252,246,0.98),rgba(255,255,255,0.96))}
.offer-result-lead--manageable{border-color:rgba(59,130,246,0.16);background:linear-gradient(180deg,rgba(241,247,255,0.98),rgba(255,255,255,0.96))}
.offer-result-lead--tight{border-color:rgba(217,119,6,0.18);background:linear-gradient(180deg,rgba(255,248,236,0.98),rgba(255,255,255,0.96))}
.offer-result-lead--risky{border-color:rgba(220,38,38,0.16);background:linear-gradient(180deg,rgba(255,243,243,0.98),rgba(255,255,255,0.96))}
.offer-result-lead-copy h2{margin:0;font-size:clamp(1.5rem,2vw,2rem)}
.offer-result-lead-copy p:last-child{color:var(--text-secondary);font-size:1rem;line-height:1.65}
.offer-result-lead-stats{display:grid;gap:.85rem}
.offer-result-stat{padding:.92rem 1rem;border-radius:18px;background:rgba(255,255,255,0.84);border:1px solid rgba(26,31,54,0.08);display:grid;gap:.32rem}
.offer-result-stat strong{font-size:1.22rem;font-family:var(--font-heading);letter-spacing:-.03em;color:var(--text)}
.offer-result-stat span:last-child{color:var(--text-secondary);font-size:.92rem;line-height:1.5}
.offer-result-stat-label{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.offer-result-stat--score strong{font-size:1.85rem}
.offer-context-strip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem}
.offer-context-card{padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(26,31,54,0.06);background:rgba(255,255,255,0.92);display:grid;gap:.45rem}
.offer-context-card h3{margin:0;font-size:1.05rem;line-height:1.45}
.offer-context-card p:last-child{color:var(--text-secondary);font-size:.95rem;line-height:1.6}
.offer-context-card--info{background:linear-gradient(180deg,rgba(243,248,255,0.98),rgba(255,255,255,0.94));border-color:rgba(59,130,246,0.14)}
.offer-context-card--neutral{background:linear-gradient(180deg,rgba(250,248,245,0.98),rgba(255,255,255,0.94))}
.offer-main-answer-grid{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(250px,0.82fr);gap:1rem}
.offer-decision-card,.offer-score-card{padding:1.12rem 1.15rem;border-width:1px;box-shadow:0 10px 26px rgba(26,31,54,0.05)}
.offer-decision-card--safe,.offer-score-card--safe{background:linear-gradient(180deg,rgba(240,252,246,0.98),rgba(255,255,255,0.94));border-color:rgba(45,106,90,0.18)}
.offer-decision-card--manageable,.offer-score-card--manageable{background:linear-gradient(180deg,rgba(241,247,255,0.98),rgba(255,255,255,0.94));border-color:rgba(59,130,246,0.18)}
.offer-decision-card--tight,.offer-score-card--tight{background:linear-gradient(180deg,rgba(255,248,236,0.98),rgba(255,255,255,0.94));border-color:rgba(217,119,6,0.2)}
.offer-decision-card--risky,.offer-score-card--risky{background:linear-gradient(180deg,rgba(255,243,243,0.98),rgba(255,255,255,0.94));border-color:rgba(220,38,38,0.18)}
.offer-score-card{justify-content:center}
.offer-risk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}
.offer-risk-card{padding:1rem 1.04rem;box-shadow:none}
.offer-risk-card--danger{background:linear-gradient(180deg,rgba(255,243,243,0.98),rgba(255,255,255,0.94));border-color:rgba(220,38,38,0.18)}
.offer-risk-card--warning{background:linear-gradient(180deg,rgba(255,248,236,0.98),rgba(255,255,255,0.94));border-color:rgba(217,119,6,0.2)}
.offer-risk-card--caution{background:linear-gradient(180deg,rgba(246,248,255,0.98),rgba(255,255,255,0.94));border-color:rgba(112,141,183,0.2)}
.offer-risk-empty{padding:1rem 1.05rem;border-radius:16px;background:rgba(244,247,252,0.9);border:1px solid rgba(112,141,183,0.14)}
.offer-risk-empty p{margin:0;color:var(--text-secondary)}
.offer-support-section{padding:1.08rem 1.12rem;border:1px solid rgba(26,31,54,0.06);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(250,248,245,0.92));box-shadow:0 8px 24px rgba(26,31,54,0.04)}
.offer-support-meta-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
.offer-support-meta-list div{padding:.85rem .9rem;background:rgba(255,255,255,0.88);border:1px solid rgba(26,31,54,0.06);border-radius:14px}
.offer-support-section .section-intro{max-width:46rem}
.offer-related-links-card{border-color:rgba(26,31,54,0.06);background:linear-gradient(180deg,rgba(255,255,255,0.95),rgba(247,249,252,0.92));box-shadow:0 10px 26px rgba(26,31,54,0.05)}

@media(max-width:980px){
    .next-step-layout--offer,.offer-result-lead,.offer-main-answer-grid{grid-template-columns:1fr}
    .offer-support-meta-list,.offer-context-strip-grid,.offer-risk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:760px){
    .tool-workzone-card--offer{padding:1.2rem 1rem}
    .tool-sidecard--offer,.next-step-block--offer,.tool-page-faq--offer .faq-section,.offer-support-section,.offer-result-lead,.tool-results-frame--offer{padding:1rem}
    .offer-support-meta-list,.offer-context-strip-grid,.offer-risk-grid{grid-template-columns:1fr}
    .next-step-main--offer .button{width:100%}
    .offer-result-stat--score strong{font-size:1.65rem}
}

/* OFFER ANALYZER RESULT DASHBOARD REPAIR */
.offer-results-anchor-wrap{margin-top:1.4rem;scroll-margin-top:7.5rem;max-width:100%}
.offer-results-dashboard{--rw-offer-chart-rent:#e8604c;--rw-offer-chart-groceries:#2d6a5a;--rw-offer-chart-transport:#708db7;--rw-offer-chart-utilities:#cd9361;--rw-offer-chart-family_expenses:#9b6bd3;--rw-offer-chart-recurring_residency:#3b82f6;--rw-offer-chart-reserve_cushion:#14a37f;--rw-offer-chart-other:#94a3b8;display:grid;gap:1rem;width:100%;max-width:100%;min-width:0;padding:clamp(1rem,2vw,1.45rem);border:1px solid rgba(112,141,183,.16);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,251,255,.96));box-shadow:0 22px 56px rgba(15,23,42,.09);overflow:hidden}
.offer-results-dashboard:focus{outline:none}
.offer-results-dashboard:focus-visible{outline:3px solid rgba(232,96,76,.28);outline-offset:4px}
.offer-results-dashboard--safe{border-color:rgba(45,106,90,.18);background:linear-gradient(180deg,rgba(244,250,247,.98),rgba(255,255,255,.97))}
.offer-results-dashboard--manageable{border-color:rgba(59,130,246,.18);background:linear-gradient(180deg,rgba(246,249,255,.98),rgba(255,255,255,.97))}
.offer-results-dashboard--tight{border-color:rgba(217,119,6,.2);background:linear-gradient(180deg,rgba(255,250,244,.98),rgba(255,255,255,.97))}
.offer-results-dashboard--risky{border-color:rgba(232,96,76,.2);background:linear-gradient(180deg,rgba(255,247,243,.98),rgba(255,255,255,.97))}
.offer-results-dashboard__head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;min-width:0}
.offer-results-dashboard__head>div:first-child{min-width:0}
.offer-results-dashboard__head h2{margin:0;font-size:clamp(1.45rem,2.4vw,2.05rem)}
.offer-results-dashboard__head p:last-child{margin:.35rem 0 0;color:var(--text-secondary)}
.offer-results-step{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 .45rem;color:var(--primary-dark);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.offer-results-step span{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:999px;background:var(--primary);color:#fff;font-size:.82rem;letter-spacing:0}
.offer-results-actions{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end;flex:0 0 auto}
.offer-results-actions .button{min-height:40px;padding:.62rem .9rem;font-size:.88rem;box-shadow:none}
.offer-verdict-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.34fr) minmax(170px,.28fr);gap:1rem;align-items:stretch;padding:1.05rem;border-radius:20px;border:1px solid rgba(26,31,54,.07);background:rgba(255,255,255,.78)}
.offer-verdict-hero--safe{background:linear-gradient(135deg,rgba(240,252,246,.98),rgba(255,255,255,.94));border-color:rgba(45,106,90,.16)}
.offer-verdict-hero--manageable{background:linear-gradient(135deg,rgba(241,247,255,.98),rgba(255,255,255,.94));border-color:rgba(59,130,246,.16)}
.offer-verdict-hero--tight{background:linear-gradient(135deg,rgba(255,248,236,.98),rgba(255,255,255,.94));border-color:rgba(217,119,6,.18)}
.offer-verdict-hero--risky{background:linear-gradient(135deg,rgba(255,243,243,.98),rgba(255,255,255,.94));border-color:rgba(232,96,76,.18)}
.offer-verdict-hero__copy{min-width:0;display:grid;align-content:center}
.offer-verdict-hero__copy h3{margin:.1rem 0 .35rem;font-size:clamp(1.35rem,2.2vw,1.85rem);overflow-wrap:anywhere}
.offer-verdict-hero__copy p:last-child{margin:0;color:var(--text-secondary);line-height:1.62}
.offer-score-meter,.offer-risk-pill{display:grid;align-content:center;justify-items:center;gap:.55rem;min-width:0;padding:.9rem;border:1px solid rgba(26,31,54,.06);border-radius:18px;background:rgba(255,255,255,.82)}
.offer-score-meter__value{display:flex;align-items:baseline;gap:.2rem;color:var(--text)}
.offer-score-meter__value strong{font-family:var(--font-heading);font-size:clamp(2.2rem,4vw,3.4rem);line-height:1;letter-spacing:-.04em}
.offer-score-meter__value span{color:var(--muted);font-weight:700}
.offer-score-meter__bar{width:100%;height:.62rem;border-radius:999px;background:rgba(26,31,54,.08);overflow:hidden}
.offer-score-meter__bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),var(--accent))}
.offer-score-meter__ticks{display:flex;justify-content:space-between;width:100%;color:var(--muted);font-size:.72rem;font-weight:700}
.offer-risk-pill span{font-size:1.35rem}
.offer-risk-pill small{color:var(--muted);font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;text-align:center}
.offer-risk-pill strong{font-size:1.2rem;line-height:1.2;text-align:center}
.offer-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;min-width:0}
.offer-kpi-grid article{display:grid;gap:.28rem;min-width:0;padding:.9rem .95rem;border:1px solid rgba(26,31,54,.07);border-radius:18px;background:rgba(255,255,255,.9);box-shadow:0 8px 20px rgba(15,23,42,.04)}
.offer-kpi-grid article>span{font-size:1.2rem;line-height:1}
.offer-kpi-grid small{color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;line-height:1.35}
.offer-kpi-grid strong{display:block;min-width:0;font-family:var(--font-heading);font-size:clamp(1.05rem,1.7vw,1.35rem);line-height:1.18;letter-spacing:-.03em;overflow-wrap:anywhere}
.offer-kpi-grid em{color:var(--text-secondary);font-size:.88rem;font-style:normal;line-height:1.35;overflow-wrap:anywhere}
.offer-results-visual-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:1rem;align-items:stretch;min-width:0}
.offer-results-visual-grid .offer-meaning-panel{grid-column:1/-1}
.offer-result-panel{min-width:0;padding:1rem 1.05rem;border:1px solid rgba(26,31,54,.07);border-radius:20px;background:rgba(255,255,255,.92);box-shadow:0 10px 28px rgba(15,23,42,.05)}
.offer-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.8rem;min-width:0}
.offer-panel-head h3{margin:0;font-size:1.16rem}
.offer-panel-head p{margin:.25rem 0 0;color:var(--text-secondary);font-size:.92rem;line-height:1.5}
.offer-budget-donut-wrap{display:grid;grid-template-columns:minmax(150px,.42fr) minmax(0,1fr);gap:1rem;align-items:center;min-width:0}
.offer-budget-donut{position:relative;width:min(100%,13rem);aspect-ratio:1;margin-inline:auto;border-radius:50%;background:var(--donut);box-shadow:inset 0 0 0 1px rgba(26,31,54,.06),0 14px 26px rgba(15,23,42,.06)}
.offer-budget-donut::after{content:'';position:absolute;inset:18%;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px rgba(26,31,54,.06)}
.offer-budget-donut>div{position:absolute;inset:24%;z-index:1;display:grid;place-content:center;text-align:center}
.offer-budget-donut strong{display:block;font-family:var(--font-heading);font-size:clamp(.95rem,1.7vw,1.25rem);line-height:1.15;letter-spacing:-.03em;overflow-wrap:anywhere}
.offer-budget-donut span{display:block;color:var(--muted);font-size:.78rem;font-weight:700}
.offer-budget-legend{display:grid;gap:.5rem;min-width:0}
.offer-budget-legend>div{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:.5rem;align-items:center;min-width:0;padding:.45rem .55rem;border-radius:12px;background:rgba(246,249,255,.72);border:1px solid rgba(112,141,183,.11)}
.offer-budget-legend b{font-size:.9rem;line-height:1.25;overflow-wrap:anywhere}
.offer-budget-legend em{color:var(--muted);font-size:.82rem;font-style:normal;font-weight:700;white-space:nowrap}
.offer-budget-legend strong{font-size:.86rem;white-space:nowrap}
.offer-dot{width:.72rem;height:.72rem;border-radius:999px;background:#94a3b8;box-shadow:0 0 0 3px rgba(148,163,184,.14)}
.offer-dot--rent{background:var(--rw-offer-chart-rent);box-shadow:0 0 0 3px rgba(232,96,76,.12)}
.offer-dot--groceries{background:var(--rw-offer-chart-groceries);box-shadow:0 0 0 3px rgba(45,106,90,.12)}
.offer-dot--transport{background:var(--rw-offer-chart-transport);box-shadow:0 0 0 3px rgba(112,141,183,.14)}
.offer-dot--utilities{background:var(--rw-offer-chart-utilities);box-shadow:0 0 0 3px rgba(205,147,97,.14)}
.offer-dot--family_expenses{background:var(--rw-offer-chart-family_expenses);box-shadow:0 0 0 3px rgba(155,107,211,.13)}
.offer-dot--recurring_residency{background:var(--rw-offer-chart-recurring_residency);box-shadow:0 0 0 3px rgba(59,130,246,.13)}
.offer-dot--reserve_cushion{background:var(--rw-offer-chart-reserve_cushion);box-shadow:0 0 0 3px rgba(20,163,127,.13)}
.offer-dot--other{background:var(--rw-offer-chart-other)}
.offer-cover-panel{display:grid;align-content:start}
.offer-cover-bars{display:grid;gap:.72rem}
.offer-cover-row{display:grid;grid-template-columns:minmax(120px,.35fr) minmax(0,1fr) auto;gap:.7rem;align-items:center;min-width:0}
.offer-cover-row>span{font-size:.9rem;font-weight:700;color:var(--text-secondary);line-height:1.25}
.offer-cover-row>div{height:.72rem;border-radius:999px;background:rgba(26,31,54,.08);overflow:hidden;min-width:0}
.offer-cover-row i{display:block;height:100%;border-radius:inherit}
.offer-cover-bar--income{background:linear-gradient(90deg,var(--accent),var(--accent-light))}
.offer-cover-bar--costs{background:linear-gradient(90deg,var(--primary),#f0a08f)}
.offer-cover-bar--leftover{background:linear-gradient(90deg,#708db7,#9fb3d1)}
.offer-cover-row strong{font-size:.9rem;white-space:nowrap;overflow-wrap:anywhere}
.offer-cover-highlight{display:flex;align-items:baseline;gap:.5rem;margin-top:1rem;padding:.8rem .9rem;border-radius:16px;background:rgba(45,106,90,.08);border:1px solid rgba(45,106,90,.12)}
.offer-cover-highlight strong{font-family:var(--font-heading);font-size:1.8rem;line-height:1;color:var(--accent)}
.offer-cover-highlight span{color:var(--text-secondary);font-size:.92rem;line-height:1.35}
.offer-meaning-list{display:grid;gap:.55rem}
.offer-meaning-list p{display:flex;gap:.55rem;align-items:flex-start;margin:0;color:var(--text-secondary);line-height:1.55}
.offer-meaning-list span{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:1.3rem;height:1.3rem;border-radius:999px;background:rgba(45,106,90,.12);color:var(--accent);font-weight:800}
.offer-results-lower-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.75fr) minmax(240px,.68fr);gap:1rem;align-items:stretch;min-width:0}
.offer-risk-list-v2{display:grid;gap:.65rem}
.offer-risk-list-v2 article,.offer-context-strip-v2 article{display:flex;gap:.7rem;align-items:flex-start;min-width:0;padding:.75rem .8rem;border-radius:15px;background:rgba(246,249,255,.72);border:1px solid rgba(112,141,183,.11)}
.offer-risk-list-v2 article>span,.offer-context-strip-v2 article>span{flex:0 0 auto;line-height:1.3}
.offer-risk-list-v2 strong,.offer-context-strip-v2 strong{display:block;line-height:1.3;overflow-wrap:anywhere}
.offer-risk-list-v2 p,.offer-context-strip-v2 p{margin:.2rem 0 0;color:var(--text-secondary);font-size:.92rem;line-height:1.48}
.offer-next-list{display:grid;gap:.55rem}
.offer-next-list a,.offer-next-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.55rem;align-items:center;width:100%;min-height:46px;padding:.68rem .75rem;border-radius:14px;border:1px solid rgba(26,31,54,.07);background:rgba(255,255,255,.86);color:var(--text);font:inherit;text-align:left;cursor:pointer;box-shadow:none}
.offer-next-list a:hover,.offer-next-list button:hover{border-color:rgba(232,96,76,.22);background:rgba(255,247,243,.9);color:var(--primary-dark)}
.offer-next-list strong{font-size:.93rem;line-height:1.28;overflow-wrap:anywhere}
.offer-next-list em{font-style:normal;color:var(--primary);font-weight:800}
.offer-consult-card{display:grid;gap:.65rem;background:linear-gradient(180deg,rgba(255,247,243,.98),rgba(255,255,255,.96));border-color:rgba(232,96,76,.16)}
.offer-consult-card h3{margin:0;font-size:1.25rem}
.offer-consult-card ul{margin:0;padding-left:1.1rem;color:var(--text-secondary)}
.offer-consult-card .button{width:100%;margin-top:.15rem}
.offer-context-strip-v2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;min-width:0}
.offer-interpret-panel{background:linear-gradient(180deg,rgba(250,248,245,.94),rgba(255,255,255,.94))}
.offer-interpret-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;min-width:0}
.offer-interpret-grid article{min-width:0;padding:.85rem .9rem;border-radius:15px;background:rgba(255,255,255,.9);border:1px solid rgba(26,31,54,.06)}
.offer-interpret-grid strong{display:block;font-family:var(--font-heading);font-size:1.25rem;line-height:1.1}
.offer-interpret-grid span{display:block;margin:.25rem 0;color:var(--text);font-weight:800;line-height:1.25}
.offer-interpret-grid p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.45}
@media(max-width:1080px){.offer-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.offer-results-lower-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.offer-consult-card{grid-column:1/-1}.offer-verdict-hero{grid-template-columns:minmax(0,1fr) minmax(190px,.42fr)}}
@media(max-width:860px){.offer-results-dashboard__head{display:grid}.offer-results-actions{justify-content:flex-start}.offer-verdict-hero,.offer-results-visual-grid,.offer-results-lower-grid,.offer-budget-donut-wrap,.offer-context-strip-v2,.offer-interpret-grid{grid-template-columns:1fr}.offer-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.offer-results-visual-grid .offer-meaning-panel,.offer-consult-card{grid-column:auto}.offer-score-meter,.offer-risk-pill{justify-items:start}.offer-risk-pill{text-align:left}}
@media(max-width:560px){.offer-results-anchor-wrap{width:min(calc(100% - 1rem),var(--container))}.offer-results-dashboard{padding:.85rem;border-radius:18px}.offer-results-actions,.offer-results-actions .button{width:100%}.offer-verdict-hero,.offer-result-panel{padding:.85rem;border-radius:16px}.offer-kpi-grid{grid-template-columns:1fr}.offer-budget-legend>div{grid-template-columns:auto minmax(0,1fr) auto}.offer-budget-legend strong{grid-column:2/-1;white-space:normal}.offer-cover-row{grid-template-columns:1fr}.offer-cover-row strong{white-space:normal}.offer-cover-highlight{align-items:flex-start;flex-direction:column;gap:.25rem}.offer-next-list a,.offer-next-list button{grid-template-columns:auto minmax(0,1fr);padding:.72rem}.offer-next-list em{display:none}}

/* GUIDES */
.guide-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem}
.guide-card,.guide-section-card,.guide-highlight-card,.guide-cta-card,.guide-header-card{background:var(--surface)}
.guide-card-meta,.guide-summary-row,.guide-trust-inline,.guide-meta-row,.guide-card-footer{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}
.guide-card-title{margin-bottom:0}
.guide-chip{display:inline-flex;align-items:center;min-height:32px;padding:.3rem .7rem;border-radius:999px;background:var(--surface-alt);color:var(--accent);font-size:.84rem;font-weight:700;border:1px solid rgba(26,31,54,0.06)}
.inline-card-link{color:var(--primary);font-weight:600;word-break:break-word}
.guide-card-footer{justify-content:space-between;margin-top:auto}
.guide-hero{padding-bottom:1.2rem}
.guide-header-card{padding:1.5rem;border:1px solid rgba(26,31,54,0.07);border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.guide-header-card--open{padding:0;background:transparent;border:0}
.guide-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,0.85fr);gap:1.25rem;align-items:start}
.guide-article,.guide-sidebar{min-width:0}
.guide-bullet-list li+li,.related-links-list li+li{margin-top:.55rem}
.related-links-list a{color:var(--primary);font-weight:600;display:inline-flex;align-items:center;gap:.45rem}
.related-links-list a::before{content:'↗';color:rgba(232,96,76,0.6)}
.related-links-card{padding:1.2rem 1.25rem;border-radius:20px;margin-top:1.25rem}

/* BREADCRUMBS */
.breadcrumbs{margin-bottom:1.2rem}
.breadcrumbs-list{display:flex;flex-wrap:wrap;gap:.45rem;padding:.45rem .65rem;margin:0;list-style:none;color:var(--muted);font-size:.92rem;border-radius:999px;background:rgba(255,255,255,0.7);border:1px solid rgba(26,31,54,0.05);width:fit-content;max-width:100%}
.breadcrumbs-item{display:inline-flex;align-items:center;gap:.45rem}
.breadcrumbs-item.is-current span[aria-current="page"]{color:var(--text);font-weight:600}
.breadcrumbs-separator{color:var(--line-strong)}

/* LANGUAGE SWITCHER */
.language-switcher{position:relative}
.language-switcher-toggle{display:inline-flex;align-items:center;gap:.3rem;min-height:38px;padding:.4rem .7rem;border:1px solid rgba(26,31,54,0.08);border-radius:10px;background:rgba(255,255,255,0.8);font:inherit;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s ease}
.language-switcher-toggle:hover{border-color:rgba(26,31,54,0.15);background:rgba(255,255,255,0.95)}
.language-switcher-chevron{display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;opacity:.5}
.language-switcher-menu{display:none;position:absolute;top:calc(100% + 4px);right:0;z-index:30;min-width:10rem;padding:.35rem;border:1px solid rgba(26,31,54,0.08);border-radius:14px;background:rgba(255,255,255,0.98);box-shadow:0 12px 36px rgba(26,31,54,0.12);backdrop-filter:blur(16px)}
.language-switcher.is-open .language-switcher-menu{display:block}
.language-switcher-option{display:flex;align-items:center;gap:.55rem;padding:.55rem .75rem;border-radius:10px;font-size:.92rem;transition:background .15s ease}
.language-switcher-option:hover{background:var(--surface-alt)}
.language-switcher-option.is-current{font-weight:700;background:rgba(232,96,76,0.06)}
.language-switcher-option-code{font-weight:700;text-transform:uppercase;font-size:.82rem;color:var(--text-secondary)}
.language-switcher-current-code{text-transform:uppercase;font-size:.82rem}

/* COOKIE CONSENT */
.cookie-consent{position:fixed;inset:auto 1rem 1rem 1rem;z-index:80}
.cookie-consent__inner{max-width:960px;margin:0 auto;display:flex;gap:1rem;align-items:center;justify-content:space-between;border:1px solid rgba(26,31,54,0.08);border-radius:18px;background:rgba(255,255,255,0.98);box-shadow:0 16px 48px rgba(26,31,54,0.12);padding:1rem 1.1rem;backdrop-filter:blur(16px)}
.cookie-consent__copy p{margin:.35rem 0 0;color:var(--muted)}
.cookie-consent__actions{display:flex;gap:.75rem;flex-shrink:0}
.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* LAYOUT REWORK */
.content-section--summary-band{padding-top:0}
.summary-strip{border-top:1px solid rgba(26,31,54,0.06);border-bottom:1px solid rgba(26,31,54,0.06);background:rgba(255,255,255,0.65)}
.summary-strip-shell{display:grid;gap:1.25rem;padding:1.25rem clamp(1rem,2vw,1.5rem)}
.summary-strip-head{max-width:760px}
.summary-strip-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}
.summary-strip-items--dense{grid-template-columns:repeat(4,minmax(0,1fr))}
.summary-strip-item{padding:.95rem 1rem;border-radius:14px;background:rgba(244,241,236,0.8);border:1px solid rgba(26,31,54,0.06)}
.summary-strip-item h3,.summary-strip-item p{margin:0}
.summary-strip-item h3{margin-top:.2rem;font-size:1rem}
.summary-strip-item p+p,.summary-strip-item h3+p{margin-top:.45rem}
.summary-strip-actions{display:flex;flex-wrap:wrap;gap:.65rem}
.editorial-flow{display:grid;gap:2rem}
.editorial-section,.open-section{max-width:840px}
.editorial-section h2,.open-section h2{margin:0}
.editorial-section p,.open-section p{margin:0}
.editorial-list{margin:0;padding-left:1.15rem}
.open-section{padding:1.2rem 1.25rem;border-radius:16px;background:rgba(255,255,255,0.8);border:1px solid rgba(26,31,54,0.06)}
.open-section--soft{background:rgba(244,241,236,0.65)}
.open-section--highlight{background:linear-gradient(180deg,rgba(244,241,236,0.98) 0%,rgba(255,255,255,0.96) 100%);border-color:rgba(26,31,54,0.1)}
.editorial-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.2rem}
.editorial-columns--three{grid-template-columns:repeat(3,minmax(0,1fr))}
.editorial-line-item{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:.85rem;padding:1rem 0;border-top:1px solid rgba(26,31,54,0.06)}
.editorial-line-item--soft{padding:1rem 0}
.editorial-line-item h3,.editorial-line-item p{margin:0}
.result-band-layout,.article-layout-v2,.city-hero-grid--decision,.route-detail-hero-grid--document{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,0.95fr);gap:1.5rem}
.result-band-main,.result-band-side,.article-main,.article-aside,.city-verdict-panel{min-width:0}
.result-band-main{padding:1.25rem 1.35rem;border-radius:18px;background:rgba(255,255,255,0.85);border:1px solid rgba(26,31,54,0.06)}
.article-aside,.city-verdict-panel,.result-band-side{display:grid;gap:1rem}
.listing-grid .listing-card{display:flex;flex-direction:column;justify-content:space-between;gap:1rem}
.listing-grid--tools .listing-card,.listing-grid--cities .listing-card{min-height:100%}
.listing-card-meta,.compact-meta-list{display:flex;flex-wrap:wrap;gap:.5rem;padding:0;margin:0;list-style:none}
.compact-meta-list{display:grid;gap:.45rem}
.data-cluster-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.data-cluster-card{padding:1.1rem 1.15rem;border-radius:16px;background:rgba(255,255,255,0.85);border:1px solid rgba(26,31,54,0.06)}
.compact-data-table{display:grid;gap:.65rem}
.compact-data-row{display:flex;align-items:start;justify-content:space-between;gap:1rem;padding-top:.65rem;border-top:1px solid rgba(26,31,54,0.05)}
.compact-data-row:first-child{border-top:0;padding-top:0}
.reference-accordion-section,.faq-accordion{display:grid;gap:.8rem}
.reference-accordion-item,.faq-accordion-item{border:1px solid rgba(26,31,54,0.07);background:rgba(255,255,255,0.9);border-radius:14px;overflow:hidden;transition:box-shadow .2s ease}
.faq-accordion-item:hover{box-shadow:0 4px 16px rgba(26,31,54,0.04)}
.reference-accordion-item summary,.faq-accordion-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;font-weight:600}
.reference-accordion-item summary::-webkit-details-marker,.faq-accordion-item summary::-webkit-details-marker{display:none}
.faq-accordion-marker{position:relative;width:.95rem;height:.95rem;flex:0 0 .95rem}
.faq-accordion-marker::before,.faq-accordion-marker::after{content:'';position:absolute;top:50%;left:50%;width:.95rem;height:2px;background:var(--muted);border-radius:999px;transform:translate(-50%,-50%)}
.faq-accordion-marker::after{transform:translate(-50%,-50%) rotate(90deg);transition:opacity .2s ease}
details[open]>summary .faq-accordion-marker::after{opacity:0}
.faq-accordion-panel{padding:0 1.1rem 1rem}
.faq-section--accordion .section-heading{max-width:760px}
.next-step-shell{display:grid;gap:1rem;padding:1.2rem 1.25rem;border-radius:20px;background:linear-gradient(180deg,rgba(244,241,236,0.98) 0%,rgba(255,255,255,0.96) 100%);border:1px solid rgba(26,31,54,0.08)}
.next-step-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,0.95fr);gap:1rem}
.next-step-layout--single{grid-template-columns:1fr}
.next-step-main,.next-step-secondary-item{padding:1rem 1.05rem;border-radius:16px;background:rgba(255,255,255,0.85);border:1px solid rgba(26,31,54,0.06)}
.next-step-secondary-list{display:grid;gap:.75rem}
.next-step-main h3,.next-step-main p,.next-step-secondary-item h3,.next-step-secondary-item p{margin:0}
.callout-strip{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.2rem 1.25rem;border-top:1px solid rgba(26,31,54,0.06);border-bottom:1px solid rgba(26,31,54,0.06)}
.related-links-block{padding:1rem 1.05rem}

/* COUNTRY/CITY PAGES */
.countries-page-description,.country-page-description,.city-page-description{max-width:52rem;font-size:1.04rem;line-height:1.68;color:var(--text-secondary)}
.countries-hero-actions,.country-hero-actions,.city-hero-actions{margin-top:.95rem}
.countries-practical-card,.countries-next-steps-card,.country-snapshot-card,.country-verdict-card,.country-overview-card,.country-side-combo-card,.country-hints-card,.country-city-card,.country-route-card,.country-tool-card,.country-next-step-card,.country-trust-notes-card,.city-verdict-card,.city-quick-read-card,.city-analysis-card,.city-summary-item,.city-salary-card,.city-route-card,.city-related-card,.city-tool-card,.city-next-step-card,.city-bottom-note-card,.city-reference-details{border:1px solid rgba(26,31,54,0.07);background:linear-gradient(180deg,rgba(255,255,255,0.99),rgba(250,248,245,0.95));box-shadow:var(--shadow)}
.countries-practical-grid,.countries-hint-grid,.countries-next-steps-grid,.countries-card-grid,.country-hints-grid,.country-city-grid,.country-route-grid,.country-tool-grid,.country-side-grid,.country-next-steps-grid,.city-quick-read-grid,.city-summary-grid,.city-salary-grid,.city-route-grid,.city-related-grid,.city-tool-grid,.city-next-steps-grid{display:grid;gap:1rem}
.countries-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.country-hints-grid,.country-city-grid,.country-route-grid,.country-tool-grid,.city-salary-grid,.city-route-grid,.city-related-grid,.city-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.country-next-steps-grid,.city-next-steps-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.countries-practical-grid,.countries-hint-grid,.countries-next-steps-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.countries-mini-card,.countries-next-step-item,.countries-hint-card,.country-side-item,.country-hint-item,.city-verdict-item,.city-quick-read-item,.city-card-detail{padding:.82rem .9rem;border-radius:14px;border:1px solid rgba(26,31,54,0.06);background:rgba(255,255,255,0.85)}
.country-hero-grid,.city-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,0.8fr);gap:1.15rem;align-items:start}
.country-hero-copy,.city-hero-copy{gap:.98rem}
.country-analysis-grid,.city-analysis-grid{display:grid;grid-template-columns:minmax(0,1.16fr) minmax(0,0.84fr);gap:1.1rem;align-items:start}
.country-verdict-card,.city-verdict-card{padding:1.14rem 1.18rem;background:linear-gradient(180deg,rgba(244,241,236,0.98),rgba(255,255,255,0.97))}
.country-snapshot-card{padding:1.08rem 1.1rem;gap:.78rem}
.country-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.66rem}
.country-verdict-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-top:.95rem}
.city-verdict-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem;margin-top:.92rem}
.city-quick-read-grid{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:.95rem}
.city-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.country-snapshot-item{padding:.72rem .8rem;border-radius:14px;border:1px solid rgba(26,31,54,0.06);background:rgba(255,255,255,0.9)}
.country-snapshot-item p{margin:0;font-size:.95rem;line-height:1.48}
.country-snapshot-item .mini-label{margin-bottom:.18rem}
.countries-country-card{padding:1.35rem;gap:1rem}
.countries-country-card:hover,.country-city-card:hover,.country-route-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-strong)}
.button-card-cta{min-height:46px;padding:.8rem 1.12rem;border-width:1px;box-shadow:0 8px 24px rgba(26,31,54,0.06)}
.country-side-combo-card{padding:1.04rem 1.08rem;display:grid;gap:.95rem;background:linear-gradient(180deg,rgba(255,255,255,0.99),rgba(250,248,245,0.95))}
.country-side-section+.country-side-section{padding-top:.92rem;border-top:1px solid rgba(26,31,54,0.06)}
.city-analysis-card{padding:1.08rem 1.12rem}
.city-analysis-side{display:grid;gap:1rem}
.city-analysis-card--secondary{background:linear-gradient(180deg,rgba(255,255,255,0.99),rgba(250,248,245,0.95))}
.city-reference-details{border-radius:18px;overflow:hidden}
.city-reference-details summary{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.08rem;cursor:pointer;list-style:none;font-weight:700;color:var(--text)}
.city-reference-details summary::-webkit-details-marker{display:none}
.city-reference-details[open] summary{border-bottom:1px solid rgba(26,31,54,0.06)}
.countries-card-topline,.countries-card-actions,.countries-card-highlights,.countries-card-audience-row,.country-card-topline,.country-card-actions,.country-next-step-actions,.country-section-actions-wrap,.city-card-topline,.city-card-actions,.city-next-step-actions,.city-bottom-note-head,.city-quick-read-head,.countries-section-heading-row,.countries-section-actions,.country-section-heading-row,.city-section-heading-row{display:flex;align-items:center;flex-wrap:wrap;gap:.72rem}
.countries-card-topline,.country-card-topline,.city-card-topline,.city-quick-read-head,.city-bottom-note-head{justify-content:space-between;align-items:flex-start}
.country-card-actions,.city-card-actions,.city-next-step-actions{margin-top:auto;justify-content:flex-start}
.country-card-positioning,.city-card-positioning,.countries-card-positioning{margin:0;font-size:.98rem;line-height:1.55;color:var(--text-secondary)}
.countries-practical-header p,.countries-next-steps-card>.stack-sm>p,.countries-card-detail p,.countries-card-note p,.countries-next-step-item p,.countries-hint-card p,.countries-methodology-note,.country-detail-main-section .section-intro,.country-detail-main-section .info-card p,.country-supporting-note,.country-snapshot-heading .small-muted,.city-detail-main-section .section-intro,.city-detail-main-section .info-card p,.city-supporting-note,.city-meta-note,.country-bullet-list li,.city-bullet-list li{color:var(--text-secondary);font-size:.99rem;line-height:1.65}
.city-summary-amount{margin:.24rem 0 .2rem;font-size:1.18rem;font-weight:700;font-family:var(--font-heading);color:var(--text)}
.city-summary-note{margin:0}
.city-reference-stack{display:grid;gap:.85rem}
.city-number-stack{display:grid;gap:1rem}
.city-summary-block{display:grid;gap:.8rem}
.city-summary-block-head{display:grid;gap:.18rem}
.country-snapshot-heading{display:grid;gap:.28rem}
.country-verdict-heading{gap:.9rem;align-items:start}
.country-verdict-intro,.city-verdict-intro,.city-quick-read-intro{max-width:30rem;margin:0}
.city-verdict-heading{display:grid;gap:.3rem}
.country-card-kicker,.city-card-kicker{margin-bottom:.34rem}
.country-card-detail,.country-card-note,.city-card-detail{padding:.72rem .8rem;border-radius:14px;border:1px solid rgba(26,31,54,0.06);background:rgba(250,248,245,0.8)}
.country-card-detail p,.country-card-note p,.city-card-detail p{margin:0}
.country-bullet-list,.city-bullet-list{gap:.52rem}
.countries-mini-list{margin:0;padding-left:1.1rem;color:var(--text-secondary);line-height:1.6}
.countries-mini-list li+li{margin-top:.5rem}
.countries-card-detail-grid,.country-card-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.city-card-detail-grid{display:grid;gap:.6rem;grid-template-columns:repeat(2,minmax(0,1fr))}
.countries-card-notes{gap:.75rem}
.countries-country-kicker{color:var(--muted)}
.countries-card-pill{max-width:16rem;text-align:center;justify-content:center}
.city-bottom-note-card{background:linear-gradient(180deg,rgba(255,255,255,0.99),rgba(250,248,245,0.94))}
.city-bottom-disclaimer{margin:0}
.countries-practical-card{padding:1.55rem;gap:1.2rem}
.countries-next-steps-card{padding:1.5rem}
.country-city-card,.country-route-card,.country-tool-card,.country-next-step-card{padding:1.12rem;min-height:100%}
.city-summary-item,.city-salary-card{padding:1rem;min-height:100%}
.city-route-card,.city-related-card,.city-tool-card,.city-next-step-card,.city-bottom-note-card{padding:1.08rem 1.12rem}
.country-trust-notes-card{padding:.94rem 1.08rem}
.city-quick-read-card{padding:1rem 1.08rem}
.city-reference-details .table-wrap,.city-reference-details .empty-state-card{padding:0 1rem 1rem}
.city-reference-details .table-wrap{margin:0}
.split-callout{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.empty-state-card{padding:1.35rem;border-style:dashed}
.countries-index-section{padding-top:.4rem}
body.route-countries .page-hero,.country-page-hero,.city-page-hero{padding:2.8rem 0 1.2rem}
body[class*="route-tool-"] .page-hero,body.route-compare-cities .page-hero{padding:3rem 0 1.6rem}
.countries-card-highlights .pill,.countries-card-audience-row .link-chip{background:rgba(255,255,255,0.9)}
.countries-card-grid{align-items:stretch}
.countries-country-card{min-height:100%;background:linear-gradient(180deg,rgba(255,255,255,0.99),rgba(250,248,245,0.96));border-color:rgba(26,31,54,0.075)}
.countries-country-identity{display:inline-flex;align-items:center;gap:.48rem;padding:.32rem .58rem .32rem .38rem;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid rgba(26,31,54,.08);box-shadow:0 6px 18px rgba(26,31,54,.05)}
.countries-country-flag{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,245,240,.94));box-shadow:inset 0 0 0 1px rgba(26,31,54,.08);font-size:1.16rem;line-height:1}
.countries-card-pill{display:inline-flex;align-items:center;gap:.38rem;max-width:20rem;padding:.42rem .66rem;text-align:left;justify-content:flex-start;background:linear-gradient(135deg,rgba(232,96,76,.1),rgba(45,106,90,.08));border-color:rgba(232,96,76,.18);color:var(--text);white-space:normal}
.countries-card-pill-dot{width:.48rem;height:.48rem;border-radius:999px;background:var(--accent);box-shadow:0 0 0 3px rgba(232,96,76,.12);flex:0 0 auto}
.countries-card-pill-label{font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;font-size:.64rem;white-space:nowrap}
.countries-card-header h3{font-size:1.2rem;line-height:1.22}
.countries-card-detail,.countries-card-note{background:rgba(255,255,255,.72)}
.country-card-actions .button,.country-next-step-actions .button,.city-card-actions .button,.city-next-step-actions .button{width:auto}
.country-card-actions .button.button-primary,.country-next-step-actions .button.button-primary,.city-card-actions .button.button-primary,.city-next-step-actions .button.button-primary{box-shadow:0 10px 28px rgba(232,96,76,0.18)}
.country-card-actions .button.button-secondary,.country-next-step-actions .button.button-secondary,.country-section-actions-wrap .button.button-secondary,.country-tool-card .button.button-secondary,.city-card-actions .button.button-secondary,.city-next-step-actions .button.button-secondary,.city-hero-actions .button.button-secondary{background:rgba(255,255,255,0.95);border-color:rgba(26,31,54,0.1);box-shadow:0 6px 20px rgba(26,31,54,0.05)}
.country-tool-card .country-card-actions,.country-next-step-actions,.city-next-step-actions{justify-content:flex-start}
.country-supporting-note,.city-supporting-note{margin:0;color:var(--muted)}
.city-analysis-card--primary h2,.city-analysis-card--secondary h3,.city-summary-block-head h3,.city-reference-details summary span:first-child,.city-route-card h3,.city-related-card h3,.city-tool-card h3,.city-next-step-card h3,.city-bottom-note-card h2{letter-spacing:-.02em}
.city-summary-item h4,.city-salary-card h4,.city-route-card h3,.city-related-card h3,.city-tool-card h3,.city-next-step-card h3{margin-bottom:.32rem;font-size:1.02rem;line-height:1.28}
.countries-mini-card h3,.countries-next-step-item h3,.countries-hint-card h3,.country-side-item h3,.country-hint-item h3{margin-bottom:.2rem;font-size:.99rem;line-height:1.28}
.city-verdict-item p,.city-quick-read-item p,.city-card-detail p,.country-verdict-item p,.country-snapshot-item p{margin:0}
.city-verdict-item .mini-label,.city-quick-read-item .mini-label,.city-card-detail .mini-label,.country-verdict-item .mini-label,.country-snapshot-item .mini-label,.country-card-detail .mini-label,.country-card-note .mini-label{margin-bottom:.18rem}

/* COMPARISON HUB */
body.route-comparisons .page-hero{padding:3.1rem 0 1.45rem}
.comparisons-hero-shell,.comparisons-section-panel,.comparisons-band-panel{padding:1.75rem;border:1px solid rgba(26,31,54,0.06);border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,0.94),rgba(248,245,240,0.88));box-shadow:0 16px 44px rgba(26,31,54,0.05)}
.comparisons-hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);gap:1.35rem;align-items:start}
.comparisons-page-description{max-width:42rem}
.comparisons-chip-row{display:flex;flex-wrap:wrap;gap:.55rem}
.comparisons-chip{display:inline-flex;align-items:center;justify-content:center;min-height:2.1rem;padding:.35rem .85rem;border-radius:999px;background:rgba(244,241,236,0.95);border:1px solid rgba(26,31,54,0.06);color:var(--text-secondary);font-size:.92rem;font-weight:600}
.comparisons-hero-actions{margin-top:.1rem}
.comparisons-placeholder-card{padding:1.18rem 1.16rem;border:1px solid rgba(26,31,54,0.08);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(246,242,236,0.92));box-shadow:0 14px 34px rgba(26,31,54,0.05)}
.comparisons-placeholder-label{margin:0 0 .75rem;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.comparisons-placeholder-head{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:.75rem;align-items:center;padding-bottom:.85rem;border-bottom:1px solid rgba(26,31,54,0.08)}
.comparisons-placeholder-head h2{margin:0;font-size:clamp(1.35rem,2vw,1.75rem)}
.comparisons-placeholder-head p{margin:.18rem 0 0;color:var(--text-secondary);font-size:.92rem;line-height:1.45}
.comparisons-placeholder-head-right{text-align:right}
.comparisons-placeholder-swap{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:999px;background:rgba(244,241,236,0.95);border:1px solid rgba(26,31,54,0.08);font-size:1.2rem;color:var(--text)}
.comparisons-placeholder-rows{display:grid;margin-top:.2rem}
.comparisons-placeholder-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(120px,auto) minmax(0,.9fr);gap:.8rem;align-items:center;padding:.78rem 0;border-top:1px solid rgba(26,31,54,0.06)}
.comparisons-placeholder-metric{color:var(--text-secondary);font-size:.92rem;text-align:center}
.comparisons-placeholder-side{display:flex;align-items:center;gap:.55rem;font-size:.95rem;font-weight:700;color:var(--text)}
.comparisons-placeholder-side--right{justify-content:flex-end}
.comparisons-placeholder-bar{display:inline-flex;flex:0 0 3.2rem;height:.36rem;border-radius:999px;background:linear-gradient(90deg,var(--primary),rgba(232,96,76,0.25))}
.comparisons-placeholder-side--right .comparisons-placeholder-bar{background:linear-gradient(90deg,var(--accent),rgba(45,106,90,0.22))}
.comparisons-placeholder-foot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem}
.comparisons-placeholder-foot-card{display:grid;gap:.3rem;padding:.95rem 1rem;border:1px solid rgba(26,31,54,0.06);border-radius:18px;background:rgba(255,255,255,0.82)}
.comparisons-placeholder-foot-card strong{font-size:1.08rem;line-height:1.35;color:var(--text)}
.comparisons-placeholder-foot-card span{color:var(--text-secondary);font-size:.92rem;line-height:1.55}
.comparisons-section{padding-top:1rem;padding-bottom:1rem}
.comparisons-section-heading h2,.comparisons-how-to h2,.comparisons-related-tools h2,.comparisons-browse-head h3{color:var(--text)}
.comparisons-section-heading h2{margin:0}
.comparisons-table-wrap{overflow-x:auto}
.comparisons-featured-table{width:100%;min-width:860px;border-collapse:separate;border-spacing:0;border:1px solid rgba(26,31,54,0.08);border-radius:20px;overflow:hidden;background:rgba(255,255,255,0.95)}
.comparisons-featured-table th,.comparisons-featured-table td{padding:1rem 1rem;border-bottom:1px solid rgba(26,31,54,0.06);text-align:left;vertical-align:top}
.comparisons-featured-table th[scope="row"]{font-family:var(--font-body);font-size:1rem;font-weight:700;line-height:1.45;color:var(--text);background:transparent}
.comparisons-featured-table thead th{background:rgba(244,241,236,0.96);color:var(--text-secondary);font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.comparisons-featured-table tbody tr:last-child th[scope="row"],.comparisons-featured-table tbody tr:last-child td{border-bottom:0}
.comparisons-featured-table tbody tr:hover th[scope="row"],.comparisons-featured-table tbody tr:hover td{background:rgba(248,245,240,0.72)}
.comparisons-featured-table th[scope="row"] strong{font-size:1rem;line-height:1.45;color:var(--text)}
.comparisons-row-action-block,.comparisons-browse-action-block{display:grid;gap:.35rem}
.comparisons-row-links,.comparisons-browse-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.comparisons-row-link,.comparisons-browse-link{display:inline-flex;align-items:center;gap:.35rem;padding:0;border:0;background:none;color:var(--primary-dark);font-size:.95rem;font-weight:700;line-height:1.4}
.comparisons-row-link::after,.comparisons-browse-link::after{content:'→';font-size:.9em}
.comparisons-row-link:hover,.comparisons-browse-link:hover{text-decoration:underline}
.comparisons-row-note,.comparisons-browse-note-inline{color:var(--muted);font-size:.82rem;line-height:1.5}
.comparisons-empty-cell{color:var(--muted)}
.comparisons-browse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.comparisons-browse-lane{padding:1.15rem 1.2rem;border:1px solid rgba(26,31,54,0.06);border-radius:22px;background:rgba(250,248,245,0.72)}
.comparisons-browse-head{display:flex;align-items:center;gap:.85rem;padding-bottom:.85rem;border-bottom:1px solid rgba(26,31,54,0.08)}
.comparisons-browse-head h3{margin:0}
.comparisons-browse-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:999px;border:1px solid rgba(26,31,54,0.08);background:rgba(255,255,255,0.92);font-size:1rem;font-weight:800;color:var(--text-secondary)}
.comparisons-browse-list{display:grid}
.comparisons-browse-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 0;border-bottom:1px solid rgba(26,31,54,0.08)}
.comparisons-browse-item:last-child{border-bottom:0;padding-bottom:0}
.comparisons-browse-copy{display:grid;gap:.18rem}
.comparisons-browse-copy strong{font-size:1rem;line-height:1.45}
.comparisons-browse-copy span{color:var(--text-secondary);font-size:.92rem;line-height:1.5}
.comparisons-browse-action-block{justify-items:end}
.comparisons-browse-note{margin:.1rem 0 0;text-align:center;color:var(--text-secondary);font-size:.95rem}
.comparisons-section--band{padding-top:.95rem;padding-bottom:1.15rem}
.comparisons-band-grid{display:grid;grid-template-columns:minmax(0,1.28fr) minmax(270px,.72fr);gap:1.2rem;align-items:start}
.comparisons-how-to h2,.comparisons-related-tools h2{margin:0 0 1rem}
.comparisons-step-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.comparisons-step-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.8rem;align-items:start}
.comparisons-step-item h3{margin:0;font-size:1.02rem;line-height:1.5}
.comparisons-step-item p{margin:0;color:var(--text-secondary);font-size:.95rem;line-height:1.62}
.comparisons-step-number{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:linear-gradient(135deg,var(--primary),#d75b47);color:#fff;font-size:.88rem;font-weight:800;box-shadow:0 8px 20px rgba(232,96,76,0.18)}
.comparisons-related-list{display:grid;border-top:1px solid rgba(26,31,54,0.08)}
.comparisons-related-item{display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:.95rem 0;border-bottom:1px solid rgba(26,31,54,0.08)}
.comparisons-related-item:hover .comparisons-related-copy strong{color:var(--primary-dark)}
.comparisons-related-copy{display:grid;gap:.2rem}
.comparisons-related-copy strong{font-size:1rem;line-height:1.45;color:var(--text)}
.comparisons-related-copy span{color:var(--text-secondary);font-size:.92rem;line-height:1.55}
.comparisons-related-arrow{color:var(--primary-dark);font-size:1.35rem;line-height:1}
@media(max-width:1220px){.site-nav{gap:.7rem}.nav-list{gap:.15rem}.nav-link{padding:.42rem .72rem}.nav-actions{gap:.55rem}.nav-actions .button{min-width:9.2rem;padding-inline:.9rem}}
@media(max-width:1100px){.comparisons-hero-grid,.comparisons-browse-grid,.comparisons-band-grid{grid-template-columns:1fr}.comparisons-step-list{grid-template-columns:1fr}.comparisons-placeholder-foot{grid-template-columns:1fr}.comparisons-hero-shell,.comparisons-section-panel,.comparisons-band-panel{padding:1.4rem}}
@media(max-width:760px){body.route-comparisons .page-hero{padding-top:2.6rem}.comparisons-hero-shell,.comparisons-section-panel,.comparisons-band-panel{padding:1.15rem;border-radius:22px}.comparisons-chip-row{gap:.45rem}.comparisons-chip{font-size:.88rem}.comparisons-placeholder-card{padding:1rem}.comparisons-placeholder-head{grid-template-columns:1fr;justify-items:start}.comparisons-placeholder-head-right{text-align:left}.comparisons-placeholder-swap{margin:.15rem 0}.comparisons-placeholder-row{grid-template-columns:1fr;gap:.38rem}.comparisons-placeholder-metric{text-align:left;font-size:.88rem}.comparisons-placeholder-side,.comparisons-placeholder-side--right{justify-content:flex-start}.comparisons-featured-table,.comparisons-featured-table thead,.comparisons-featured-table tbody,.comparisons-featured-table tr,.comparisons-featured-table th,.comparisons-featured-table td{display:block;width:100%;min-width:0}.comparisons-featured-table{border-radius:18px;overflow:hidden}.comparisons-featured-table thead{display:none}.comparisons-featured-table tbody{display:grid;gap:.85rem;padding:.85rem;background:rgba(250,248,245,0.55)}.comparisons-featured-table tbody tr{padding:1rem;border:1px solid rgba(26,31,54,0.06);border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(26,31,54,0.04)}.comparisons-featured-table th[scope="row"],.comparisons-featured-table td{padding:.45rem 0;border-bottom:0}.comparisons-featured-table th[scope="row"]::before,.comparisons-featured-table td::before{content:attr(data-label);display:block;margin-bottom:.16rem;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.comparisons-browse-item,.comparisons-related-item{align-items:flex-start;flex-direction:column}.comparisons-browse-action-block{justify-items:start}.comparisons-row-links,.comparisons-browse-actions{gap:.42rem}}

/* RESPONSIVE */
@media(max-width:1180px){
.hero-grid--home{grid-template-columns:1fr;gap:1.3rem}
.hero-visual-wrap{max-width:none;margin-left:0}
.hero-scenario-grid,.hero-scenario-grid--lighter{grid-template-columns:1fr}
.home-explore-layout{grid-template-columns:1fr}
.home-explore-secondary-block{padding-left:0;padding-top:.35rem;border-left:0;border-top:1px solid var(--line)}
.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.guide-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.country-verdict-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.city-summary-grid,.city-quick-read-grid,.city-next-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:1040px){
.countries-card-grid,.countries-practical-grid,.countries-hint-grid,.countries-next-steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.country-hero-grid,.city-hero-grid,.country-analysis-grid,.city-analysis-grid,.country-next-steps-grid,.city-next-steps-grid{grid-template-columns:1fr}
.city-quick-read-head,.city-bottom-note-head{flex-direction:column;align-items:stretch}
}

@media(max-width:980px){
.site-header{padding-top:.85rem}
.header-shell{border-radius:18px}
.hero-grid--home,.hero-grid,.guide-layout,.tool-layout,.result-support-layout,.footer-grid,.guide-card-grid,.card-grid,.budget-card-grid,.trust-basis-grid{grid-template-columns:1fr}
.hero-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.hero-visual-media{min-height:14rem}
.home-section .container{padding:1.6rem}
.sticky-card{position:static}
.two-col-grid,.meta-list,.compact-meta-list,.single-row-meta{grid-template-columns:1fr}
.section-heading-row,.subsection-header,.split-callout,.data-card-head{align-items:start;flex-direction:column}
.tool-decision-strip,.tool-result-guidance-grid{grid-template-columns:1fr}
.summary-strip-items,.summary-strip-items--dense,.editorial-columns,.editorial-columns--three,.data-cluster-grid,.hero-scenario-grid--lighter,.next-step-layout,.result-band-layout,.article-layout-v2,.city-hero-grid--decision,.route-detail-hero-grid--document{grid-template-columns:1fr}
.hero-visual-wrap{order:0}
.hero-visual-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.footer-column{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:1rem}
.risk-flag-grid{grid-template-columns:1fr}
}

@media(max-width:760px){
body.nav-open{overflow:hidden}
.header-row{align-items:center;min-height:74px;padding:.9rem 0}
.header-shell{padding:.78rem .85rem;border-radius:16px;gap:.65rem}
.brand-block{min-width:0;flex:1 1 auto}
.brand-logo{width:clamp(9.5rem,42vw,12.5rem)}
.brand-tagline{display:none}
.language-switcher--mobile{display:block}
.language-switcher--desktop{display:none}
.language-switcher--mobile .language-switcher-toggle{min-height:40px;padding:.4rem .6rem}
.menu-toggle{display:inline-flex;flex:0 0 auto}
.site-nav{display:none;position:absolute;top:calc(100% + .45rem);left:0;right:0;z-index:25;width:100%;flex-direction:column;align-items:stretch;gap:1rem;padding:.95rem;background:rgba(255,255,255,0.98);border:1px solid rgba(26,31,54,0.06);border-radius:20px;box-shadow:0 20px 50px rgba(26,31,54,0.15)}
.site-nav.is-open{display:flex}
.nav-list,.nav-actions{width:100%;flex-direction:column;align-items:stretch;background:transparent;border:0;padding:0}
.nav-link{width:100%;justify-content:flex-start;padding-inline:.95rem;min-height:46px;border:1px solid rgba(26,31,54,0.06);background:rgba(250,248,245,0.85)}
.nav-link.is-active,.nav-link:hover{background:rgba(232,96,76,0.06)}
.hero,.page-hero{padding-top:3rem}
.hero-home{padding-top:4.8rem}
.hero-grid,.footer-grid,.card-grid,.callout-card,.cta-strip-inner{grid-template-columns:1fr;flex-direction:column;align-items:stretch}
.button,.nav-actions .button{width:100%}
.hero-description,.section-intro,.tool-card-meta,.footer-summary p,.footer-helper-text,.footer-meta,.footer-column a,.small-muted,.home-card p,.home-result-summary-card p,.home-result-verdict p,.home-result-signals li{font-size:1rem;line-height:1.66}
.hero-stats-grid,.hero-visual-metrics-grid{grid-template-columns:1fr}
.home-section .container,.cta-strip-inner--home{padding:1.35rem;border-radius:22px}
.home-card,.guide-card,.data-card,.callout-card,.table-wrap,.related-links-card,.empty-state-card{border-radius:16px}
.breadcrumbs-list{width:100%;border-radius:14px}
.hero-chip-row{gap:.5rem}
.link-chip-row,.cta-group{flex-direction:column;align-items:stretch}
.link-chip-row>*,.cta-group>*{width:100%}
.table-wrap{border-radius:14px}
.data-table{min-width:620px}
.inline-card-cta,.home-card-cta{width:100%;justify-content:center}
.footer-grid{grid-template-columns:1fr}
.footer-column{padding-left:0;border-left:0;border-top:1px solid var(--line);padding-top:1rem}
.footer-key-actions-list{flex-direction:column}
.footer-key-action{width:100%;justify-content:center}
.contact-form-grid{grid-template-columns:1fr}
.cookie-consent__inner{flex-direction:column;align-items:stretch}
.cookie-consent__actions{width:100%;flex-direction:column-reverse}
.cookie-consent__actions .button{width:100%;justify-content:center}
.verdict-grid{grid-template-columns:1fr}
.home-result-preview,.home-result-summary-grid{grid-template-columns:1fr}
.tool-explainer{padding:.95rem}
.button-form-submit{width:100%;min-width:0}
.tool-decision-card,.tool-result-guidance-card{padding:1rem}
.tool-form-group-heading{padding-top:.7rem}
.countries-card-grid,.countries-practical-grid,.countries-hint-grid,.countries-next-steps-grid,.country-snapshot-grid,.country-verdict-grid,.country-hints-grid,.country-city-grid,.country-route-grid,.country-tool-grid,.city-verdict-grid,.city-quick-read-grid,.city-summary-grid,.city-salary-grid,.city-route-grid,.city-related-grid,.city-tool-grid,.city-next-steps-grid,.city-card-detail-grid,.country-card-detail-grid,.countries-card-detail-grid{grid-template-columns:1fr}
.countries-card-topline,.countries-section-actions,.countries-card-actions,.country-card-topline,.country-card-actions,.country-next-step-actions,.country-section-actions-wrap,.city-card-topline,.city-card-actions,.city-next-step-actions,.city-hero-actions,.city-section-heading-row,.countries-hero-actions,.country-hero-actions{flex-direction:column;align-items:stretch}
.countries-card-actions .button,.countries-section-actions .button,.countries-hero-actions .button,.country-card-actions .button,.country-next-step-actions .button,.country-hero-actions .button,.country-section-actions-wrap .button,.city-card-actions .button,.city-next-step-actions .button,.city-hero-actions .button,.city-section-heading-row .button{width:100%}
.hero-visual-media{min-height:12.5rem}
.callout-strip{flex-direction:column;align-items:flex-start}
.compact-data-row{flex-direction:column;gap:.25rem}
.summary-strip-items,.summary-strip-items--dense,.editorial-columns,.editorial-columns--three,.data-cluster-grid,.hero-scenario-grid--lighter{grid-template-columns:1fr}
.countries-card-pill{max-width:none}
body.route-countries .page-hero,.country-page-hero,.city-page-hero{padding:2.45rem 0 1rem}
}

@media(max-width:720px){
.summary-strip-items,.summary-strip-items--dense,.editorial-columns,.editorial-columns--three,.data-cluster-grid,.hero-scenario-grid--lighter{grid-template-columns:1fr}
.callout-strip{flex-direction:column;align-items:flex-start}
.compact-data-row{flex-direction:column;gap:.25rem}
}

.tool-results-shell{scroll-margin-top:7.5rem}
.tool-results-frame{padding:clamp(1rem,2vw,1.5rem);border:1px solid rgba(112,141,183,.22);border-radius:1.4rem;background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(246,249,255,.98) 100%);box-shadow:0 18px 42px rgba(15,23,42,.06)}
.tool-results-frame:focus{outline:none}
.tool-results-frame .tool-result-guidance-block:first-child{margin-top:0}
@media (max-width:760px){.tool-results-shell{scroll-margin-top:6.25rem}.tool-results-frame{padding:1rem;border-radius:1rem}}
@media (max-width:1180px){.card-grid--tools{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* SHARED TOOL WORKZONE EMPHASIS */
.tool-workzone-card{position:relative;padding:1.5rem 1.55rem;border:1px solid rgba(160,114,74,0.16);background:linear-gradient(180deg,rgba(255,255,255,0.985),rgba(251,247,241,0.97));box-shadow:0 18px 42px rgba(58,39,24,0.08);overflow:hidden}
.tool-workzone-card::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px 0 rgba(255,255,255,0.65)}
.tool-workzone-card::after{content:'Tool';position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.34rem .72rem;border-radius:999px;border:1px solid rgba(160,114,74,0.22);background:rgba(255,250,244,0.94);color:#7c5430;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 18px rgba(58,39,24,0.06)}
.tool-workzone-header{padding:0 5.4rem .35rem 0}
.tool-workzone-card .tool-form{margin-top:.65rem;padding:1rem 1rem 1.05rem;border:2px dashed rgba(188,153,117,0.38);border-radius:1.15rem;background:linear-gradient(180deg,rgba(253,248,242,0.98),rgba(250,244,236,0.96))}
.tool-workzone-card .tool-form-group-heading{margin-top:.35rem;padding-top:1rem;border-top:1px solid rgba(125,91,60,0.12)}
.tool-workzone-card .form-field select,.tool-workzone-card .form-field input,.tool-workzone-card .form-field textarea{background:rgba(255,255,255,0.995);border:1.5px solid rgba(125,91,60,0.24);box-shadow:inset 0 1px 0 rgba(255,255,255,0.82)}
.tool-workzone-card .form-field select:hover,.tool-workzone-card .form-field input:hover,.tool-workzone-card .form-field textarea:hover{border-color:rgba(163,111,65,0.30);background:#fff}
.tool-workzone-card .form-field select:focus,.tool-workzone-card .form-field input:focus,.tool-workzone-card .form-field textarea:focus{border-color:rgba(179,107,57,0.48);background:#fff;box-shadow:0 0 0 4px rgba(226,167,122,0.16)}
.tool-workzone-card .form-outcome-hint{background:linear-gradient(180deg,rgba(205,147,97,0.10),rgba(255,255,255,0.88));border-color:rgba(170,116,73,0.16)}
.tool-workzone-card .button-form-submit{min-width:min(100%,16rem);box-shadow:0 12px 28px rgba(170,105,60,0.20)}
.tool-sidecard{padding:1rem 1.05rem;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(250,248,245,0.92));border-color:rgba(26,31,54,0.05);box-shadow:0 8px 22px rgba(26,31,54,0.04)}
.tool-sidecard h2{font-size:1.06rem}
.tool-sidecard .plain-list li{color:var(--text-secondary);line-height:1.6}

/* COMPARE CITIES RESULT CLARITY */
.tool-results-frame--compare{padding:clamp(1.05rem,2vw,1.45rem);border-color:rgba(112,141,183,0.16);background:linear-gradient(180deg,rgba(250,252,255,0.98),rgba(255,255,255,0.98));box-shadow:0 18px 42px rgba(15,23,42,0.07)}
.compare-result-lead{padding:1.15rem 1.2rem;border-radius:22px;border:1px solid rgba(26,31,54,0.06);background:linear-gradient(180deg,rgba(255,255,255,0.98),rgba(246,249,255,0.96));box-shadow:0 10px 28px rgba(26,31,54,0.04)}
.compare-result-lead-head{max-width:48rem}
.compare-result-lead-head h3{margin-bottom:.28rem;font-size:1.34rem}
.compare-result-lead-head p:last-child{margin:0;color:var(--text-secondary);line-height:1.65}
.compare-result-lead-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.95rem}
.compare-result-lead-card{padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(26,31,54,0.07);background:rgba(255,255,255,0.9);display:grid;gap:.45rem;box-shadow:0 8px 24px rgba(26,31,54,0.04)}
.compare-result-lead-card h3,.compare-result-lead-card p,.compare-result-lead-card strong{margin:0}
.compare-result-lead-card h3{font-size:1.06rem;line-height:1.35}
.compare-result-lead-card p{color:var(--text-secondary);font-size:.95rem;line-height:1.6}
.compare-result-lead-card--cost{background:linear-gradient(180deg,rgba(255,248,236,0.98),rgba(255,255,255,0.94));border-color:rgba(217,119,6,0.16)}
.compare-result-lead-card--income{background:linear-gradient(180deg,rgba(241,247,255,0.98),rgba(255,255,255,0.94));border-color:rgba(59,130,246,0.16)}
.compare-result-lead-card--muted{background:linear-gradient(180deg,rgba(248,249,251,0.98),rgba(255,255,255,0.94));border-color:rgba(26,31,54,0.08)}
.compare-result-lead-meta{display:inline-flex;align-items:center;min-height:2rem;padding:.38rem .68rem;border-radius:999px;background:rgba(255,255,255,0.88);border:1px solid rgba(26,31,54,0.07);font-size:.86rem;font-weight:700;color:var(--text)}
.comparison-section-shell{padding:1.08rem 1.12rem;border:1px solid rgba(26,31,54,0.06);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,0.96),rgba(250,248,245,0.92));box-shadow:0 8px 24px rgba(26,31,54,0.04)}
.comparison-section-intro{max-width:46rem;margin:0;color:var(--text-secondary);font-size:.98rem;line-height:1.64}
.comparison-section-callout{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;padding:.85rem .95rem;border-radius:16px;border:1px solid rgba(26,31,54,0.06);background:rgba(255,255,255,0.9)}
.comparison-section-callout strong{font-size:.86rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.comparison-section-callout span{display:block;color:var(--text);font-weight:600;line-height:1.55}
.comparison-section-callout--cost{background:linear-gradient(180deg,rgba(255,248,236,0.98),rgba(255,255,255,0.94));border-color:rgba(217,119,6,0.16)}
.comparison-section-callout--monthly{background:linear-gradient(180deg,rgba(241,247,255,0.98),rgba(255,255,255,0.94));border-color:rgba(59,130,246,0.16)}
.comparison-section-callout--neutral{background:linear-gradient(180deg,rgba(248,249,251,0.98),rgba(255,255,255,0.94));border-color:rgba(26,31,54,0.08)}
.comparison-table th{white-space:normal}
.comparison-delta-cell{min-width:180px}
.comparison-delta-cell strong{margin-bottom:.45rem}
.comparison-delta-badge{display:inline-flex;align-items:center;min-height:2rem;padding:.34rem .65rem;border-radius:999px;font-size:.82rem;font-weight:700;border:1px solid rgba(26,31,54,0.08);background:rgba(248,249,251,0.96);color:var(--text-secondary)}
.comparison-delta-badge--higher{background:rgba(255,248,236,0.98);border-color:rgba(217,119,6,0.18);color:#9a5a05}
.comparison-delta-badge--same{background:rgba(246,248,252,0.98);border-color:rgba(112,141,183,0.16);color:#4a5168}

@media(max-width:980px){
  .compare-result-lead-grid{grid-template-columns:1fr}
}

@media(max-width:760px){
  .tool-workzone-card,.tool-sidecard,.compare-result-lead,.comparison-section-shell,.tool-results-frame--compare{padding:1rem}
  .tool-workzone-card::after{top:.82rem;right:.82rem}
  .tool-workzone-header{padding-right:4.8rem}
  .tool-workzone-card .tool-form{padding:.9rem .88rem .95rem}
  .comparison-section-callout{flex-direction:column;align-items:flex-start}
  .tool-workzone-card .button-form-submit{width:100%}
}


.salary-table-wrap{overflow-x:auto}
.salary-table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.94);border:1px solid rgba(26,31,54,.08);border-radius:18px;overflow:hidden}
.salary-table th,.salary-table td{padding:.9rem 1rem;border-bottom:1px solid rgba(26,31,54,.06);text-align:left}
.salary-table th{font-size:.84rem;letter-spacing:.04em;text-transform:uppercase;color:var(--text-secondary);background:rgba(248,249,251,.96)}
.salary-badge{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .75rem;border-radius:999px;font-size:.85rem;font-weight:700;border:1px solid rgba(26,31,54,.08);background:rgba(248,249,251,.96)}
.salary-badge--high{background:rgba(237,250,240,.98);border-color:rgba(22,163,74,.18);color:#166534}
.salary-badge--medium{background:rgba(241,247,255,.98);border-color:rgba(59,130,246,.18);color:#1d4ed8}
.salary-badge--low{background:rgba(255,248,236,.98);border-color:rgba(217,119,6,.18);color:#9a5a05}
.salary-meta-list{display:grid;gap:.55rem}
.salary-result-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(16rem,.8fr);gap:1rem;margin-top:.25rem}
.salary-result-main{display:grid;gap:.55rem;padding:1.1rem 1.15rem;border-radius:22px;border:1px solid rgba(224,94,62,.14);background:linear-gradient(180deg,rgba(255,250,247,.99),rgba(255,255,255,.96));box-shadow:0 12px 30px rgba(224,94,62,.07)}
.salary-result-main-value{font-size:2.25rem;line-height:1.05;letter-spacing:-.03em;color:var(--heading);font-weight:800}
.salary-result-summary{margin:0;color:var(--text-secondary);font-size:.97rem;line-height:1.62}
.salary-result-sidecards{display:grid;gap:.85rem}
.salary-result-sidecard,.salary-meta-card{display:grid;gap:.42rem;padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(26,31,54,.07);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,255,.96))}
.salary-result-sidecard strong,.salary-meta-card strong{font-size:1.08rem;line-height:1.3}
.salary-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.salary-meta-card p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.55}
.salary-range-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.salary-range-card{display:grid;gap:.4rem;padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(26,31,54,.07);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,255,.96))}
.salary-range-card strong{font-size:1.35rem;line-height:1.22}
.salary-range-card--median{border-color:rgba(224,94,62,.18);background:linear-gradient(180deg,rgba(255,250,247,.99),rgba(255,255,255,.96))}
.salary-range-card--median strong{font-size:1.5rem}
.tool-layout--salary-benchmark{grid-template-columns:minmax(0,1fr);gap:1.3rem}
.tool-layout--salary-benchmark > aside{min-width:0}
@media(max-width:980px){.tool-layout--salary-benchmark{grid-template-columns:1fr}.salary-result-hero,.salary-meta-grid,.salary-range-grid{grid-template-columns:1fr}}


.salary-inline-emphasis{font-weight:800;color:var(--heading)}
.salary-facts-row{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.1rem}
.salary-fact-chip{display:inline-flex;align-items:center;gap:.55rem;padding:.62rem .82rem;border-radius:999px;border:1px solid rgba(26,31,54,.08);background:rgba(255,255,255,.88);font-size:.92rem;line-height:1.3;color:var(--text-secondary)}
.salary-fact-chip .mini-label{margin:0;color:var(--text-tertiary)}
.salary-fact-chip strong{font-size:.95rem;color:var(--heading);font-weight:700}
.salary-fact-chip--demand{border-color:rgba(224,94,62,.18);background:rgba(255,250,247,.95)}
.salary-result-hero{gap:1.15rem;margin-top:.35rem}
.salary-result-main{gap:.65rem;padding:1.25rem 1.25rem 1.2rem}
.salary-result-main-value{font-size:2.7rem}
.salary-result-summary{font-size:1rem;line-height:1.7}
.salary-result-sidecards{align-content:start}
.salary-result-sidecard strong{font-size:1.16rem;color:var(--heading)}
.salary-range-grid{margin-top:.05rem}
.salary-range-card{padding:1.05rem 1.08rem}
.salary-range-card strong{font-size:1.42rem;color:var(--heading)}
.salary-meta-grid{gap:.75rem}
.salary-meta-card{background:linear-gradient(180deg,rgba(248,250,255,.95),rgba(255,255,255,.98))}
.salary-meta-card strong{font-size:1rem}
.tool-explainer-copy{padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(26,31,54,.06);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.92))}
.tool-explainer-copy p{font-size:.96rem;line-height:1.72}
@media(max-width:980px){.salary-facts-row{gap:.55rem}.salary-fact-chip{width:100%;justify-content:space-between}.salary-result-main-value{font-size:2.3rem}}

/* Equivalent income calculator */
.tool-layout--equivalent-income{grid-template-columns:minmax(0,1fr)}
.equivalent-income-workzone{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(20rem,.88fr);gap:1rem;align-items:start}
.equivalent-income-main-column,.equivalent-income-side-stack{display:grid;gap:1rem}
.equivalent-income-side-stack{position:sticky;top:1rem}
.equivalent-income-summary-card,.equivalent-income-warning-card,.equivalent-income-table-card,.equivalent-income-detail-card{overflow:hidden}
.equivalent-income-summary-card{border-color:rgba(224,94,62,.14);box-shadow:0 18px 42px rgba(17,24,39,.08),0 2px 8px rgba(224,94,62,.06)}
.equivalent-income-warning-card{border-color:rgba(217,119,6,.14);background:linear-gradient(180deg,rgba(255,248,236,.98),rgba(255,255,255,.95))}
.equivalent-income-warning-head{display:grid;gap:.35rem;margin-bottom:.45rem}
.equivalent-income-warning-head h3{margin:0;font-size:1.2rem;line-height:1.2}
.equivalent-income-warning-note{margin:0 0 .75rem;color:var(--text-secondary);line-height:1.68}
.equivalent-income-warning-note strong{color:var(--heading)}
.equivalent-income-explainer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}
.equivalent-income-meta-card strong{font-size:1.1rem;line-height:1.3;color:var(--heading)}
.equivalent-income-meta-card .small-muted{margin-top:.15rem}
.equivalent-income-summary-hero .salary-result-main-value{font-size:2.65rem}
.equivalent-income-summary-card .salary-result-hero{grid-template-columns:1fr}
.equivalent-income-summary-card .salary-result-main,.equivalent-income-summary-card .salary-result-sidecards,.equivalent-income-summary-card .salary-result-sidecard,.equivalent-income-summary-card .salary-fact-chip{min-width:0}
.equivalent-income-summary-card .salary-result-sidecards{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.equivalent-income-summary-card .equivalent-income-facts-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.equivalent-income-summary-card .salary-fact-chip strong,.equivalent-income-summary-card .salary-result-sidecard strong{font-weight:800}
.equivalent-income-country-name{font-size:clamp(1.55rem,2.6vw,2rem) !important;line-height:1.08;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.equivalent-income-facts-row .salary-fact-chip strong{font-size:1.02rem;font-weight:800}
.equivalent-income-summary-note{margin-top:.75rem}
.equivalent-income-summary-note strong{color:var(--heading)}
.equivalent-income-table-card,.equivalent-income-detail-card{padding-top:1.05rem}
.equivalent-income-table-head{display:grid;gap:.35rem;margin-bottom:.8rem}
.equivalent-income-table-head h2{margin:0;font-size:1.22rem;line-height:1.2}
.equivalent-income-table-wrap{margin-top:.15rem}
.equivalent-income-table strong{font-weight:800;color:var(--heading)}
.equivalent-income-table .text-link{display:block;line-height:1.5;font-size:.9rem}
.equivalent-income-table td:nth-child(3),.equivalent-income-table td:nth-child(4),.equivalent-income-table td:nth-child(6){min-width:9.5rem}
.equivalent-income-table td:nth-child(7){min-width:11.25rem}
.equivalent-income-table td,.equivalent-income-table th{vertical-align:top}
.badge--lighter,.badge--similar,.badge--tighter{display:inline-flex;align-items:center;min-height:2rem;padding:.35rem .72rem;border-radius:999px;font-size:.84rem;font-weight:700;border:1px solid rgba(26,31,54,.08)}
.badge--lighter{background:rgba(237,250,240,.98);border-color:rgba(22,163,74,.18);color:#166534}
.badge--similar{background:rgba(241,247,255,.98);border-color:rgba(59,130,246,.18);color:#1d4ed8}
.badge--tighter{background:rgba(255,248,236,.98);border-color:rgba(217,119,6,.18);color:#9a5a05}
.table-actions-stack{display:grid;gap:.3rem}
@media(max-width:980px){.tool-layout--equivalent-income{grid-template-columns:1fr}.equivalent-income-workzone{grid-template-columns:1fr}.equivalent-income-side-stack{position:static}.equivalent-income-explainer-grid{grid-template-columns:1fr}.equivalent-income-summary-card .salary-result-sidecards,.equivalent-income-summary-card .equivalent-income-facts-row{grid-template-columns:1fr}.equivalent-income-summary-hero .salary-result-main-value{font-size:2.2rem}.equivalent-income-country-name{font-size:1.75rem !important}}


.highest-paying-workzone{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(20rem,.94fr);gap:1rem;align-items:start}
.highest-paying-main-column,.highest-paying-side-stack{display:grid;gap:1rem}
.highest-paying-side-column{min-width:0}
.highest-paying-side-stack{position:sticky;top:1rem}
.highest-paying-form-card,.highest-paying-table-card,.highest-paying-warning-card,.highest-paying-summary-card{overflow:hidden}
.highest-paying-summary-card{border-color:rgba(224,94,62,.14);box-shadow:0 20px 48px rgba(17,24,39,.08),0 2px 8px rgba(224,94,62,.06)}
.highest-paying-warning-card{border-color:rgba(224,94,62,.18);background:linear-gradient(180deg,rgba(255,252,248,.98),rgba(255,255,255,.98))}
.highest-paying-warning-head{display:grid;gap:.35rem;margin-bottom:.5rem}
.highest-paying-warning-head h3{margin:0;font-size:1.24rem;line-height:1.2}
.highest-paying-warning-copy{margin-bottom:.75rem}
.highest-paying-warning-note{margin:0 0 .8rem;color:var(--text-secondary);line-height:1.68}
.highest-paying-warning-note strong{color:var(--heading)}
.highest-paying-warning-list{margin:0;padding-left:1.1rem;display:grid;gap:.55rem;color:var(--text-secondary)}
.highest-paying-warning-list li{line-height:1.6}
.highest-paying-table-card{padding-top:1.05rem}
.highest-paying-table-head{display:grid;gap:.35rem;margin-bottom:.85rem}
.highest-paying-table-head h3{margin:0;font-size:1.2rem;line-height:1.2}
.highest-paying-table-wrap{margin-top:.2rem}
.highest-paying-summary-actions{margin-top:.8rem;padding-top:.85rem;border-top:1px solid rgba(26,31,54,.08)}
.highest-paying-confidence-badge{display:inline-flex;margin-top:.5rem}
.ranking-metric-value{display:inline-block;font-weight:800;color:#156f57}
.ranking-metric-value--money,.ranking-metric-value--normalized{font-size:1rem}
.ranking-metric-value--range{line-height:1.55}
.ranking-metric-value--normalized.is-muted{color:var(--text-secondary)}
.ranking-metric-value--confidence{color:var(--heading);font-size:1rem}
.highest-paying-table td:nth-child(3),.highest-paying-table td:nth-child(4),.highest-paying-table td:nth-child(5),.highest-paying-table td:nth-child(7){min-width:10rem}
.highest-paying-table td:nth-child(8){min-width:11.5rem}
.highest-paying-table td,.highest-paying-table th{vertical-align:top}
.highest-paying-table .mini-label{display:block;margin-top:.2rem}
.highest-paying-table tbody tr:first-child td{background:rgba(255,251,247,.85)}
.highest-paying-confidence-note p{margin-bottom:.45rem}
.highest-paying-confidence-note p:last-child{margin-bottom:0}
.highest-paying-top-country{font-size:2.05rem;line-height:1.02;font-weight:800;color:var(--heading);margin-top:.1rem}
.highest-paying-top-intro{margin-top:.35rem}
.highest-paying-metric-stack{display:grid;gap:.9rem;margin-top:.35rem}
.highest-paying-primary-metric,.highest-paying-secondary-metric,.highest-paying-mini-card,.highest-paying-highlights,.highest-paying-confidence-note,.highest-paying-flow-card{padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(26,31,54,.07);background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(248,250,255,.94))}
.highest-paying-primary-metric{border-color:rgba(224,94,62,.18);background:linear-gradient(180deg,rgba(255,252,250,.99),rgba(255,246,241,.94))}
.highest-paying-primary-metric strong,.highest-paying-secondary-metric strong,.highest-paying-mini-card strong{font-weight:800;color:var(--heading)}
.highest-paying-primary-metric .salary-result-main-value{display:block;font-size:2.6rem;line-height:1.03;letter-spacing:-.03em;margin-top:.25rem}
.highest-paying-secondary-metric strong{display:block;font-size:1.28rem;line-height:1.28;margin-top:.28rem}
.highest-paying-secondary-metric.is-muted strong{color:var(--text-secondary)}
.highest-paying-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.8rem}
.highest-paying-mini-card strong{display:block;margin-top:.28rem;font-size:1.18rem}
.highest-paying-mini-card .salary-badge{margin-top:.15rem}
.highest-paying-highlights{margin-top:.8rem}
.highest-paying-highlights ul{margin:.45rem 0 0 1.1rem;padding:0;display:grid;gap:.45rem;color:var(--text-secondary)}
.highest-paying-highlights li{line-height:1.55}
.highest-paying-confidence-note{margin-top:.75rem;font-size:.92rem;line-height:1.6;color:var(--text-secondary)}
.highest-paying-confidence-note--strong{border-color:rgba(59,130,246,.16);background:linear-gradient(180deg,rgba(243,247,255,.98),rgba(255,255,255,.98))}
.highest-paying-confidence-note strong{color:var(--heading)}
.highest-paying-flow-card{margin-top:.75rem;border-color:rgba(224,94,62,.16);background:linear-gradient(180deg,rgba(255,252,248,.98),rgba(255,255,255,.98))}
.highest-paying-flow-list{margin:.55rem 0 0;padding-left:1.1rem;display:grid;gap:.48rem;color:var(--text-secondary)}
.highest-paying-flow-list li{line-height:1.55}
.ranking-actions--stacked a{padding:.82rem .95rem;border-radius:14px;border:1px solid rgba(26,31,54,.08);background:rgba(255,255,255,.96)}
.highest-paying-next-card .section-intro{margin-bottom:.75rem}
.ranking-actions{display:grid;gap:.38rem}
.ranking-actions a{font-size:.9rem;font-weight:600}
.highest-paying-note{padding:1rem 1.05rem;border-radius:18px;border:1px solid rgba(26,31,54,.06);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.92))}
.highest-paying-empty-card p:last-child{margin-bottom:0}
@media(max-width:980px){.highest-paying-workzone{grid-template-columns:1fr}.highest-paying-side-stack{position:static}.highest-paying-mini-grid{grid-template-columns:1fr}.highest-paying-top-country{font-size:1.7rem}.highest-paying-primary-metric .salary-result-main-value{font-size:2.25rem}.highest-paying-table td[data-label="Next steps"]{min-width:12rem}}


/* trust and explainability pass */
.hero-grid--home{align-items:start}
.hero-trust-card{padding:1rem 1.05rem;border-radius:20px;border:1px solid rgba(26,31,54,.08);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.95));box-shadow:0 18px 44px rgba(17,24,39,.06)}
.hero-trust-card ul{margin:0;padding-left:1.1rem;display:grid;gap:.42rem;color:var(--text-secondary)}
.hero-trust-card li{line-height:1.5}
.hero-scenario-grid--cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.hero-scenario-card{display:grid;gap:.55rem;padding:1rem 1.02rem;border-radius:18px;border:1px solid rgba(26,31,54,.07);background:rgba(255,255,255,.96);text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.hero-scenario-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(17,24,39,.08);border-color:rgba(224,94,62,.22)}
.hero-scenario-card .hero-scenario-cta{font-size:.92rem;font-weight:700;color:var(--accent)}
.trust-clarity-panel{padding:1rem 1.05rem;border-radius:20px;border:1px solid rgba(26,31,54,.08);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.95))}
.trust-clarity-panel__freshness{margin:0;color:var(--text-secondary);font-size:.95rem}
.trust-clarity-panel__section{border:1px solid rgba(26,31,54,.07);border-radius:16px;background:rgba(255,255,255,.9)}
.trust-clarity-panel__section summary{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1rem;cursor:pointer;font-weight:700;color:var(--heading);list-style:none}
.trust-clarity-panel__section summary::-webkit-details-marker{display:none}
.trust-clarity-panel__section .faq-accordion-panel{padding:0 1rem 1rem}
.data-freshness-banner{display:grid;gap:.25rem;padding:.8rem .95rem;border-radius:16px;border:1px solid rgba(59,130,246,.14);background:linear-gradient(180deg,rgba(243,247,255,.96),rgba(255,255,255,.96))}
.data-freshness-banner__text{margin:0;font-weight:700;color:var(--heading)}
.useful-limitations{display:grid;gap:.85rem}
.useful-limitations__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.useful-limitations__card ul{margin:0;padding-left:1.1rem;display:grid;gap:.45rem}
.useful-limitations__card--muted{background:linear-gradient(180deg,rgba(255,250,247,.96),rgba(255,255,255,.96))}
.value-difference__shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(16rem,.95fr);gap:1rem;padding:1.15rem 1.2rem;border-radius:22px;border:1px solid rgba(224,94,62,.16);background:linear-gradient(180deg,rgba(255,252,248,.98),rgba(255,255,255,.98))}
.value-difference__list{margin:0;padding-left:1.1rem;display:grid;gap:.5rem;color:var(--text-secondary)}
.feedback-correction__shell{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.05rem 1.1rem;border-radius:20px;border:1px solid rgba(26,31,54,.08);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,255,.94))}
.feedback-correction__shell h2{margin:0}
.why-result__grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.85rem}
.why-result__card{border-color:rgba(224,94,62,.14);background:linear-gradient(180deg,rgba(255,252,248,.98),rgba(255,255,255,.98))}
.tool-trust-stack{display:grid;gap:.9rem;margin-top:1rem}
.tool-guides-card ul,.tool-interpretation-card ul{margin:0;padding-left:1.1rem;display:grid;gap:.45rem}
.document-intro-grid,.document-card-grid{display:grid;gap:.9rem;grid-template-columns:repeat(3,minmax(0,1fr))}
.document-intro-card,.document-trust-card{height:100%}
.document-section-card .link-chip-row{margin-top:.45rem}
.page-context-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1rem}
.country-trust-grid,.city-trust-grid,.route-trust-grid{display:grid;gap:1rem;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
@media(max-width:980px){.hero-scenario-grid--cards,.useful-limitations__grid,.document-intro-grid,.document-card-grid,.page-context-grid,.country-trust-grid,.city-trust-grid,.route-trust-grid,.value-difference__shell{grid-template-columns:1fr}.feedback-correction__shell{align-items:flex-start;flex-direction:column}.hero-trust-card{order:2}}


/* GUIDE DETAIL LAYOUT REFINEMENT */
.guide-hero--article{padding-bottom:.8rem}
.guide-header-card--article{max-width:960px}
.content-section--guide-article{padding-top:.7rem}
.article-layout-v2--guide{grid-template-columns:minmax(0,1.9fr) minmax(300px,.82fr);gap:2rem;align-items:start}
.guide-article-main{gap:1.6rem}
.guide-article-main>.guide-block,.guide-article-main>.faq-section{max-width:none;width:100%}
.guide-article-main .editorial-section,.guide-article-main .open-section{max-width:none}
.guide-block--section{padding:1.3rem 1.35rem;border-radius:18px;background:rgba(255,255,255,.78);border:1px solid rgba(26,31,54,.06)}
.guide-block--section h2{margin-bottom:.1rem}
.guide-block--section p+ul,.guide-block--section p+p,.guide-block--section ul+p{margin-top:.7rem}
.guide-block--takeaways{padding:1.3rem 1.35rem}
.guide-block--cta{border-radius:18px;background:linear-gradient(180deg,rgba(250,248,245,.94),rgba(255,255,255,.96));border:1px solid rgba(26,31,54,.06);padding:1.35rem}
.guide-article-aside{position:sticky;top:5.9rem}
.guide-article-aside .related-links-card,.guide-article-aside .open-section,.guide-article-aside .trust-notes-card{padding:1.2rem 1.25rem}
.guide-article-aside .related-links-card ul,.guide-article-aside .open-section ul,.guide-article-aside .trust-notes-card ul{display:grid;gap:.55rem}
@media(max-width:1180px){
    .article-layout-v2--guide{grid-template-columns:minmax(0,1.55fr) minmax(280px,.9fr);gap:1.5rem}
}
@media(max-width:980px){
    .article-layout-v2--guide{grid-template-columns:1fr}
    .guide-article-aside{position:static}
}
@media(max-width:760px){
    .guide-block--section,.guide-block--takeaways,.guide-block--cta,.guide-article-aside .related-links-card,.guide-article-aside .open-section,.guide-article-aside .trust-notes-card{padding:1rem}
}


/* DOCUMENT PAGE LAYOUT REFINEMENT */
.content-section--document-article{padding-top:.7rem}
.article-layout-v2--document{grid-template-columns:minmax(0,1.9fr) minmax(300px,.82fr);gap:2rem;align-items:start}
.document-article-main{gap:1.6rem}
.document-article-main>.document-block,.document-article-main>.faq-section,.document-article-main>.faq-section--accordion,.document-article-main>.cta-grid-section,.document-article-main>.feedback-correction{max-width:none;width:100%}
.document-article-main .editorial-section,.document-article-main .open-section{max-width:none}
.document-block--intro{padding:1.3rem 1.35rem}
.document-intro-copy{max-width:900px}
.document-card-grid-v2{gap:1rem 1.1rem}
.document-card-grid-v2__item{height:100%;padding:1rem 1.05rem;border-radius:16px;background:rgba(255,255,255,.9);border:1px solid rgba(26,31,54,.06);box-shadow:none}
.document-card-grid-v2__item:hover{transform:none;box-shadow:none}
.document-block--section{padding:1.3rem 1.35rem;border-radius:18px;background:rgba(255,255,255,.78);border:1px solid rgba(26,31,54,.06)}
.document-block--section h2{margin-bottom:.1rem}
.document-block--section p+ul,.document-block--section p+p,.document-block--section ul+p,.document-block--section .link-chip-row{margin-top:.7rem}
.document-side-card{padding:1.2rem 1.25rem}
.document-article-aside{position:sticky;top:5.9rem;display:grid;gap:1rem}
.document-article-aside .related-links-card,.document-article-aside .trust-notes-card,.document-article-aside .open-section{padding:1.2rem 1.25rem}
.document-article-aside .related-links-card ul,.document-article-aside .trust-notes-card ul,.document-article-aside .open-section ul{display:grid;gap:.55rem}
@media(max-width:1180px){
    .article-layout-v2--document{grid-template-columns:minmax(0,1.55fr) minmax(280px,.9fr);gap:1.5rem}
}
@media(max-width:980px){
    .article-layout-v2--document,.document-card-grid-v2{grid-template-columns:1fr}
    .document-article-aside{position:static}
}
@media(max-width:760px){
    .document-block--intro,.document-block--section,.document-side-card,.document-article-aside .related-links-card,.document-article-aside .trust-notes-card,.document-article-aside .open-section{padding:1rem}
}

.tool-layout--offer-quality{grid-template-columns:minmax(0,1fr)}
.form-field--primary-salary{grid-column:1/-1;padding:1rem 1rem 1.05rem;border:1.5px solid rgba(232,96,76,0.18);border-radius:1.15rem;background:linear-gradient(180deg,rgba(255,247,243,0.98),rgba(255,255,255,0.98));box-shadow:0 10px 24px rgba(232,96,76,0.08)}
.field-label-with-icon{display:flex;align-items:center;gap:.75rem;margin-bottom:.55rem}
.field-icon-money{display:inline-flex;align-items:center;justify-content:center;width:2.65rem;height:2.65rem;border-radius:.95rem;background:linear-gradient(180deg,rgba(232,96,76,0.14),rgba(45,106,90,0.10));border:1px solid rgba(232,96,76,0.16);color:var(--primary-dark);flex:0 0 auto}
.field-icon-money svg{width:1.5rem;height:1.5rem;display:block}
.field-label-copy{display:flex;flex-direction:column;gap:.15rem}
.field-label-copy span{font-size:.95rem;font-weight:700;color:var(--text)}
.field-label-copy small{color:var(--text-secondary);font-size:.84rem;line-height:1.45}
.offer-quality-results-shell{scroll-margin-top:7.5rem}
.offer-quality-results-frame{padding:clamp(1.1rem,2vw,1.5rem);border-color:rgba(112,141,183,0.18);background:linear-gradient(180deg,rgba(250,252,255,0.98),rgba(255,255,255,0.98));box-shadow:0 20px 48px rgba(15,23,42,0.08)}
.offer-quality-summary-card{padding:1.15rem 1.2rem;border-radius:1.2rem;border:1px solid rgba(112,141,183,0.16);background:linear-gradient(135deg,rgba(255,255,255,0.98),rgba(243,247,255,0.98));display:grid;gap:1rem}
.offer-quality-summary-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}
.offer-quality-summary-head h2{margin:0;font-size:clamp(1.55rem,2.2vw,2.05rem)}
.offer-quality-summary-head p{margin:.3rem 0 0;color:var(--text-secondary)}
.offer-quality-summary-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}
.offer-quality-metric{padding:.9rem 1rem;border-radius:1rem;background:rgba(255,255,255,0.88);border:1px solid rgba(26,31,54,0.06)}
.offer-quality-metric strong{display:block;font-size:1.04rem;line-height:1.3}
.offer-quality-reference{padding:1rem 1.05rem;border-radius:1rem;background:rgba(246,249,255,0.92);border:1px solid rgba(112,141,183,0.14)}
.offer-quality-reference p{margin:.15rem 0 0;color:var(--text-secondary)}
.offer-quality-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.offer-quality-result-card{padding:1rem 1.05rem;border-radius:1.1rem;border:1px solid rgba(26,31,54,0.08);display:grid;gap:.45rem;min-height:100%}
.offer-quality-result-card--market{background:linear-gradient(180deg,rgba(255,247,243,0.98),rgba(255,255,255,0.98));border-color:rgba(232,96,76,0.16)}
.offer-quality-result-card--negotiation{background:linear-gradient(180deg,rgba(243,247,255,0.98),rgba(255,255,255,0.98));border-color:rgba(112,141,183,0.16)}
.offer-quality-result-card--employer{background:linear-gradient(180deg,rgba(244,250,247,0.98),rgba(255,255,255,0.98));border-color:rgba(45,106,90,0.16)}
.offer-quality-result-card--package{background:linear-gradient(180deg,rgba(250,247,240,0.98),rgba(255,255,255,0.98));border-color:rgba(170,116,73,0.16)}
.offer-quality-result-card p,.offer-quality-list-card p,.offer-quality-reference p,.offer-quality-next-step-card p{margin:0;color:var(--text-secondary)}
.offer-quality-result-card strong{font-size:1.08rem;line-height:1.3}
.offer-quality-ask-card{padding:1.05rem 1.1rem;border-radius:1.15rem;border:1px solid rgba(170,116,73,0.16);background:linear-gradient(180deg,rgba(255,250,244,0.98),rgba(255,255,255,0.98));display:grid;gap:1rem}
.offer-quality-ask-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}
.offer-quality-ask-item{padding:.95rem 1rem;border-radius:1rem;background:rgba(255,255,255,0.92);border:1px solid rgba(26,31,54,0.06)}
.offer-quality-ask-item strong{display:block;font-size:1.2rem;line-height:1.2;margin-top:.2rem}
.offer-quality-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.offer-quality-list-card,.offer-quality-next-steps-card,.offer-quality-why-card{padding:1rem 1.05rem;border-radius:1.1rem;border:1px solid rgba(26,31,54,0.08);background:rgba(255,255,255,0.98)}
.offer-quality-list-card ul,.offer-quality-why-card ul{margin:0;padding-left:1.1rem;color:var(--text-secondary)}
.offer-quality-next-steps-list{display:grid;gap:.75rem}
.offer-quality-next-step-card{padding:.95rem 1rem;border-radius:1rem;background:rgba(246,249,255,0.92);border:1px solid rgba(112,141,183,0.14)}
.offer-quality-next-step-card a{font-weight:700}
.offer-quality-placeholder{padding:1.05rem 1.1rem;border-radius:1.1rem;background:rgba(255,255,255,0.96);border:1px solid rgba(26,31,54,0.06)}
@media (max-width:980px){.offer-quality-results-grid,.offer-quality-list-grid,.offer-quality-ask-grid,.offer-quality-summary-metrics{grid-template-columns:1fr}}
@media (max-width:760px){.offer-quality-summary-head{grid-template-columns:1fr;display:grid}.form-field--primary-salary{padding:.9rem}.field-label-with-icon{align-items:flex-start}.offer-quality-results-frame{padding:1rem;border-radius:1rem}}

.tool-layout--conditions-full{grid-template-columns:minmax(0,1fr)}
.offer-conditions-results-shell{scroll-margin-top:7.5rem;padding:clamp(1.1rem,2vw,1.5rem);border-color:rgba(112,141,183,0.18);background:linear-gradient(180deg,rgba(250,252,255,0.98),rgba(255,255,255,0.98));box-shadow:0 20px 48px rgba(15,23,42,0.08)}
.offer-conditions-summary-card{padding:1.15rem 1.2rem;border-radius:1.2rem;border:1px solid rgba(112,141,183,0.16);background:linear-gradient(135deg,rgba(255,255,255,0.98),rgba(243,247,255,0.98));display:grid;gap:1rem}
.offer-conditions-summary-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}
.offer-conditions-summary-head h3{margin:0;font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.18}
.offer-conditions-summary-head p{margin:0;color:var(--text-secondary)}
.offer-conditions-summary-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;min-width:min(100%,22rem)}
.offer-conditions-summary-metric{padding:.9rem 1rem;border-radius:1rem;background:rgba(255,255,255,0.9);border:1px solid rgba(26,31,54,0.06)}
.offer-conditions-summary-metric strong{display:block;font-size:1.04rem;line-height:1.3}
.offer-conditions-reference-card{padding:1rem 1.05rem;border-radius:1rem;background:rgba(246,249,255,0.92);border:1px solid rgba(112,141,183,0.14)}
.offer-conditions-reference-card p{margin:0;color:var(--text-secondary)}
.offer-conditions-reference-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.offer-conditions-results-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.offer-conditions-result-card{padding:1rem 1.05rem;border-radius:1.1rem;border:1px solid rgba(26,31,54,0.08);display:grid;gap:.45rem;min-height:100%}
.offer-conditions-result-card p,.offer-conditions-list-card p,.offer-conditions-next-step-card p,.offer-conditions-placeholder p{margin:0;color:var(--text-secondary)}
.offer-conditions-result-card strong{font-size:1.08rem;line-height:1.3}
.offer-conditions-result-card--good{background:linear-gradient(180deg,rgba(244,250,247,0.98),rgba(255,255,255,0.98));border-color:rgba(45,106,90,0.18)}
.offer-conditions-result-card--watch{background:linear-gradient(180deg,rgba(255,250,244,0.98),rgba(255,255,255,0.98));border-color:rgba(170,116,73,0.18)}
.offer-conditions-result-card--risk{background:linear-gradient(180deg,rgba(255,247,243,0.98),rgba(255,255,255,0.98));border-color:rgba(232,96,76,0.18)}
.offer-conditions-result-head,.offer-conditions-list-head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}
.offer-conditions-tone-pill{display:inline-flex;align-items:center;justify-content:center;padding:.28rem .65rem;border-radius:999px;font-size:.78rem;font-weight:700;line-height:1.2;white-space:nowrap}
.offer-conditions-tone-pill--good{background:rgba(45,106,90,0.12);color:var(--accent)}
.offer-conditions-tone-pill--watch{background:rgba(170,116,73,0.12);color:#8b5c2f}
.offer-conditions-tone-pill--risk{background:rgba(232,96,76,0.12);color:var(--primary-dark)}
.offer-conditions-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.offer-conditions-list-card,.offer-conditions-next-steps-card,.offer-conditions-placeholder{padding:1rem 1.05rem;border-radius:1.1rem;border:1px solid rgba(26,31,54,0.08);background:rgba(255,255,255,0.98)}
.offer-conditions-list-card--flags{background:linear-gradient(180deg,rgba(255,247,243,0.98),rgba(255,255,255,0.98));border-color:rgba(232,96,76,0.16)}
.offer-conditions-list-card--questions{background:linear-gradient(180deg,rgba(255,250,244,0.98),rgba(255,255,255,0.98));border-color:rgba(170,116,73,0.16)}
.offer-conditions-list-card ul{margin:0;padding-left:1.1rem;color:var(--text-secondary)}
.offer-conditions-next-steps-card{background:linear-gradient(180deg,rgba(243,247,255,0.98),rgba(255,255,255,0.98));border-color:rgba(112,141,183,0.16)}
.offer-conditions-next-steps-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}
.offer-conditions-next-step-card{padding:.95rem 1rem;border-radius:1rem;background:rgba(255,255,255,0.92);border:1px solid rgba(26,31,54,0.06)}
.offer-conditions-next-step-card a{font-weight:700}
.offer-conditions-placeholder{background:rgba(255,255,255,0.96);border:1px solid rgba(26,31,54,0.06)}
@media (max-width:980px){.offer-conditions-results-grid,.offer-conditions-list-grid,.offer-conditions-next-steps-grid,.offer-conditions-summary-meta,.offer-conditions-reference-meta{grid-template-columns:1fr}.offer-conditions-summary-head{display:grid;grid-template-columns:1fr}}
@media (max-width:760px){.offer-conditions-results-shell{padding:1rem;border-radius:1rem}.offer-conditions-result-head,.offer-conditions-list-head{display:grid;grid-template-columns:1fr;gap:.4rem}}

.city-comparison-detail-hero {
    padding-bottom: 2.25rem;
}

.city-comparison-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.95fr);
    gap: 1.5rem;
    align-items: start;
}

.city-comparison-hero-copy,
.city-comparison-hero-panel,
.city-comparison-wide-panel,
.city-comparison-split-panel {
    background: #fff;
    border: 1px solid rgba(16, 24, 40, 0.08);
    border-radius: 1.25rem;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

.city-comparison-hero-copy {
    padding: 1.5rem;
}

.city-comparison-description {
    max-width: 58rem;
}

.city-comparison-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

.city-comparison-chip {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0.55rem 0.9rem;
    background: rgba(240, 102, 74, 0.08);
    color: #7f3b2a;
    font-size: 0.95rem;
    font-weight: 600;
}

.city-comparison-actions {
    align-items: center;
}

.city-comparison-hero-panel {
    min-width: 0;
    padding: 1rem;
    overflow: hidden;
}

.city-comparison-hero-panel-inner {
    min-width: 0;
    padding: 0.75rem;
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(248, 244, 240, 0.9) 0%, rgba(255, 255, 255, 1) 100%);
    overflow: hidden;
}

.city-comparison-hero-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 3rem minmax(0, 1fr);
    gap: 0.75rem;
    align-items: center;
}

.city-comparison-hero-head h2,
.city-comparison-hero-head p {
    margin: 0;
}

.city-comparison-hero-head h2 {
    font-size: 1.4rem;
}

.city-comparison-hero-head p {
    color: #667085;
}

.city-comparison-hero-head-right {
    text-align: right;
}

.city-comparison-hero-swap {
    width: 3rem;
    height: 3rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #f4ede7;
    color: #344054;
    font-size: 1.2rem;
    margin: 0 auto;
}

.city-comparison-snapshot-rows {
    display: grid;
    gap: 0.85rem;
}

.city-comparison-snapshot-row {
    display: grid;
    gap: 0.55rem;
    padding: 0.8rem 0.9rem;
    border-radius: 0.95rem;
    background: rgba(255, 255, 255, 0.7);
    border: 1px solid rgba(16, 24, 40, 0.06);
}

.city-comparison-snapshot-row-head {
    display: flex;
    align-items: center;
    justify-content: center;
}

.city-comparison-snapshot-row-body {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 0.9rem;
    align-items: center;
}

.city-comparison-snapshot-side {
    min-width: 0;
    display: grid;
    gap: 0.45rem;
    align-items: center;
}

.city-comparison-snapshot-side--left {
    grid-template-columns: minmax(3.8rem, auto) minmax(0, 1fr);
}

.city-comparison-snapshot-side--right {
    grid-template-columns: minmax(0, 1fr) minmax(3.8rem, auto);
}

.city-comparison-snapshot-edge {
    min-width: 0;
    font-size: 0.96rem;
    font-weight: 700;
    line-height: 1.2;
    color: #475467;
}

.city-comparison-snapshot-edge--left {
    text-align: left;
}

.city-comparison-snapshot-edge--right {
    text-align: right;
}

.city-comparison-snapshot-label {
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.25;
    color: #1d2939;
    text-align: center;
    white-space: normal;
}

.city-comparison-snapshot-bar {
    width: 100%;
    min-width: 0;
    height: 0.72rem;
    border-radius: 999px;
    box-shadow: inset 0 0 0 1px rgba(16, 24, 40, 0.04);
}

.city-comparison-snapshot-bar--left {
    background: linear-gradient(90deg, rgba(240, 102, 74, 0.95) 0%, rgba(240, 102, 74, 0.2) 100%);
}

.city-comparison-snapshot-bar--right {
    background: linear-gradient(90deg, rgba(122, 137, 95, 0.2) 0%, rgba(122, 137, 95, 0.95) 100%);
}

.city-comparison-verdict-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    padding-top: 0.45rem;
}

.city-comparison-verdict-item {
    position: relative;
    flex: 1 1 11rem;
    min-width: 0;
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    padding: 1rem 0.95rem 0.95rem;
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(249, 246, 242, 0.92) 100%);
    border: 1px solid rgba(16, 24, 40, 0.08);
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
    overflow: hidden;
}

.city-comparison-verdict-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, rgba(240, 102, 74, 0.75) 0%, rgba(122, 137, 95, 0.75) 100%);
}

.city-comparison-verdict-copy {
    min-width: 0;
    display: grid;
    gap: 0.28rem;
}

.city-comparison-verdict-copy strong,
.city-comparison-verdict-copy span {
    display: block;
}

.city-comparison-verdict-copy strong {
    color: #1d2939;
    font-size: 0.98rem;
    line-height: 1.2;
}

.city-comparison-verdict-copy span {
    color: #667085;
    font-size: 0.95rem;
    line-height: 1.45;
}

.city-comparison-verdict-icon {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(240, 102, 74, 0.12);
    color: #b54732;
    flex: 0 0 auto;
    box-shadow: inset 0 0 0 1px rgba(240, 102, 74, 0.08);
}

.city-comparison-verdict-icon svg {
    width: 1.2rem;
    height: 1.2rem;
    fill: currentColor;
}

.city-comparison-verdict-item:nth-child(2) .city-comparison-verdict-icon {
    background: rgba(122, 137, 95, 0.16);
    color: #5f7048;
    box-shadow: inset 0 0 0 1px rgba(122, 137, 95, 0.1);
}

.city-comparison-verdict-item:nth-child(3) .city-comparison-verdict-icon {
    background: rgba(29, 41, 57, 0.08);
    color: #475467;
    box-shadow: inset 0 0 0 1px rgba(29, 41, 57, 0.06);
}

.city-comparison-wide-panel,
.city-comparison-split-panel {
    padding: 1.5rem;
}

.city-comparison-quick-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.city-comparison-quick-item {
    display: flex;
    gap: 0.9rem;
    padding: 0.35rem 1rem;
}

.city-comparison-quick-item + .city-comparison-quick-item {
    border-left: 1px solid rgba(16, 24, 40, 0.08);
}

.city-comparison-quick-icon {
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 999px;
    background: rgba(122, 137, 95, 0.14);
    color: #5c6b45;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    flex: 0 0 auto;
}

.city-comparison-quick-item h3,
.city-comparison-quick-item p {
    margin: 0;
}

.city-comparison-quick-item p,
.city-comparison-strength-copy p,
.city-comparison-method-item p,
.city-comparison-note-band p {
    color: #667085;
}

.city-comparison-table-wrap {
    overflow-x: auto;
}

.city-comparison-table {
    width: 100%;
    min-width: 840px;
    border-collapse: separate;
    border-spacing: 0;
}

.city-comparison-table th,
.city-comparison-table td {
    padding: 1rem 1.1rem;
    border-bottom: 1px solid rgba(16, 24, 40, 0.08);
    vertical-align: middle;
}

.city-comparison-table thead th {
    font-size: 0.92rem;
    text-transform: none;
    color: #344054;
    background: #f9fafb;
    position: sticky;
    top: 0;
    z-index: 1;
}

.city-comparison-table tbody th {
    font-size: 1rem;
    color: #101828;
    background: #fff;
}

.city-comparison-metric-cell {
    display: grid;
    gap: 0.5rem;
}

.city-comparison-metric-cell strong {
    font-size: 1rem;
    color: #101828;
}

.city-comparison-meter {
    display: block;
    width: 100%;
    height: 0.72rem;
    border-radius: 999px;
    background: #f2f4f7;
    overflow: hidden;
}

.city-comparison-meter > span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, rgba(240, 102, 74, 0.95) 0%, rgba(240, 102, 74, 0.2) 100%);
}

.city-comparison-metric-cell--b .city-comparison-meter > span,
.city-comparison-strength-item .city-comparison-meter > span {
    background: linear-gradient(90deg, rgba(122, 137, 95, 0.95) 0%, rgba(122, 137, 95, 0.2) 100%);
}

.city-comparison-meaning-cell {
    color: #475467;
    font-size: 0.95rem;
}

.city-comparison-baseline-note {
    margin: 0;
    text-align: right;
    font-size: 0.9rem;
    color: #667085;
}

.city-comparison-split-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
}

.city-comparison-strength-list {
    display: grid;
    gap: 1rem;
}

.city-comparison-strength-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(140px, 180px);
    gap: 1rem;
    align-items: center;
}

.city-comparison-strength-copy h3,
.city-comparison-strength-copy p,
.city-comparison-method-item h3,
.city-comparison-method-item p {
    margin: 0;
}

.city-comparison-bullet-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 0.8rem;
}

.city-comparison-bullet-list li {
    position: relative;
    padding-left: 1.5rem;
    color: #1d2939;
}

.city-comparison-bullet-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0;
    color: #7a895f;
    font-weight: 700;
}

.city-comparison-note-band {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    padding: 0.95rem 1rem;
    border-radius: 1rem;
    background: #f8f7f4;
    border: 1px solid rgba(122, 137, 95, 0.18);
}

.city-comparison-note-band span {
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(122, 137, 95, 0.14);
    color: #5c6b45;
    flex: 0 0 auto;
}

.city-comparison-note-band p {
    margin: 0;
}

.city-comparison-cta-strip {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1.25rem;
    align-items: center;
    padding: 1.5rem;
    border-radius: 1.25rem;
    background: linear-gradient(90deg, rgba(240, 102, 74, 0.98) 0%, rgba(226, 87, 58, 0.95) 100%);
    color: #fff;
}

.city-comparison-cta-strip h2,
.city-comparison-cta-strip p {
    margin: 0;
    color: inherit;
}

.button-on-dark {
    background: #fff;
    color: #b54732;
    border-color: #fff;
}

.city-comparison-cta-actions {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.city-comparison-cta-link {
    color: #fff;
    font-weight: 700;
}

.city-comparison-related-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem 1.25rem;
}

.city-comparison-related-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 0.25rem;
    border-bottom: 1px solid rgba(16, 24, 40, 0.08);
    color: inherit;
    text-decoration: none;
}

.city-comparison-related-main {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    flex-wrap: wrap;
}

.city-comparison-related-tag {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0.32rem 0.7rem;
    background: #f4ede7;
    color: #6b4f45;
    font-size: 0.82rem;
    font-weight: 700;
}

.city-comparison-related-arrow {
    color: #b54732;
    font-size: 1.15rem;
    flex: 0 0 auto;
}

.city-comparison-method-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.city-comparison-method-item {
    padding: 0.9rem 1rem;
    border-radius: 1rem;
    background: #fcfcfd;
}


.city-comparison-section-heading p {
    margin: 0;
    max-width: 60rem;
    color: #667085;
}

.city-comparison-intro-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.8fr) minmax(16rem, 0.95fr);
    gap: 1.25rem;
    align-items: start;
}

.city-comparison-intro-paragraph {
    margin: 0;
    color: #475467;
}

.city-comparison-intro-aside,
.city-comparison-context-column {
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    background: #fcfcfd;
    border: 1px solid rgba(16, 24, 40, 0.08);
}

.city-comparison-driver-list {
    display: grid;
}

.city-comparison-driver-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 0;
    border-top: 1px solid rgba(16, 24, 40, 0.08);
}

.city-comparison-driver-row:first-child {
    border-top: 0;
    padding-top: 0;
}

.city-comparison-driver-copy {
    max-width: 46rem;
}

.city-comparison-driver-impact {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0.45rem 0.8rem;
    background: rgba(240, 102, 74, 0.08);
    color: #7f3b2a;
    font-size: 0.88rem;
    font-weight: 700;
    white-space: nowrap;
    flex: 0 0 auto;
}

.city-comparison-context-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

.city-comparison-caveat-band {
    display: grid;
    grid-template-columns: 2.5rem minmax(0, 1fr);
    gap: 0.9rem;
    align-items: start;
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    background: rgba(244, 237, 231, 0.8);
    border: 1px solid rgba(181, 71, 50, 0.16);
}

.city-comparison-caveat-band strong,
.city-comparison-caveat-band p {
    margin: 0;
}

.city-comparison-caveat-icon {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(181, 71, 50, 0.12);
    color: #b54732;
    font-weight: 800;
}

.city-comparison-related-copy {
    min-width: 0;
    display: grid;
    gap: 0.28rem;
}

.city-comparison-related-note {
    color: #667085;
    font-size: 0.92rem;
    line-height: 1.45;
}

@media (max-width: 820px) {
    .city-comparison-hero-copy,
    .city-comparison-wide-panel,
    .city-comparison-split-panel,
    .city-comparison-hero-panel {
        padding: 1.1rem;
    }

    .city-comparison-hero-head,
    .city-comparison-strength-item {
        grid-template-columns: 1fr;
    }

    .city-comparison-verdict-strip {
        flex-direction: column;
    }

    .city-comparison-intro-grid,
    .city-comparison-context-grid,
    .city-comparison-method-grid,
    .city-comparison-related-grid,
    .city-comparison-quick-grid {
        grid-template-columns: 1fr;
    }

    .city-comparison-driver-row,
    .city-comparison-caveat-band {
        grid-template-columns: 1fr;
        flex-direction: column;
    }

    .city-comparison-snapshot-row {
        padding: 0.8rem;
    }

    .city-comparison-snapshot-row-head {
        justify-content: flex-start;
    }

    .city-comparison-snapshot-row-body {
        grid-template-columns: 1fr;
        gap: 0.7rem;
    }

    .city-comparison-snapshot-side--left,
    .city-comparison-snapshot-side--right {
        grid-template-columns: minmax(4.2rem, auto) minmax(0, 1fr);
    }

    .city-comparison-snapshot-side--right .city-comparison-snapshot-bar {
        grid-column: 2;
        grid-row: 1;
    }

    .city-comparison-snapshot-side--right .city-comparison-snapshot-edge {
        grid-column: 1;
        grid-row: 1;
        text-align: left;
    }

    .city-comparison-hero-head-right {
        text-align: left;
    }

    .city-comparison-hero-swap {
        margin: 0;
    }

    .city-comparison-table {
        min-width: 700px;
    }
}

.city-comparison-detail-hero--cross-country {
    padding-bottom: 2rem;
}

.city-comparison-hero-grid--cross-country {
    align-items: stretch;
}

.city-comparison-scope-note {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    margin: 0;
    color: #52606d;
    font-size: .95rem;
}

.city-comparison-scope-note::before {
    content: '◌';
    color: #6b7a88;
}

.city-comparison-hero-panel--cross-country {
    background: linear-gradient(180deg, #fbf9f5 0%, #f5f8f9 100%);
}

.city-comparison-cross-board-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
}

.city-comparison-cross-board-city {
    display: flex;
    align-items: center;
    gap: .875rem;
}

.city-comparison-cross-board-city h2,
.city-comparison-cross-board-city p {
    margin: 0;
}

.city-comparison-cross-board-city h2 {
    font-size: 1.6rem;
}

.city-comparison-cross-board-city p {
    color: #6b7a88;
}

.city-comparison-cross-board-city--right {
    justify-content: flex-end;
    text-align: right;
}

.city-comparison-hero-swap--cross-country {
    width: 3rem;
    height: 3rem;
    font-size: 1.35rem;
}

.city-comparison-flag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 999px;
    background: #fff;
    box-shadow: inset 0 0 0 1px rgba(20, 60, 100, 0.12);
    font-size: 1.3rem;
}

.city-comparison-cross-board-lanes {
    display: flex;
    flex-direction: column;
    gap: .9rem;
}

.city-comparison-cross-lane {
    display: grid;
    grid-template-columns: 4.5rem minmax(0, 1fr) 4.5rem;
    gap: .75rem;
    align-items: center;
}

.city-comparison-cross-lane-center {
    display: flex;
    flex-direction: column;
    gap: .35rem;
}

.city-comparison-cross-lane-label {
    font-size: .92rem;
    color: #223247;
    font-weight: 600;
}

.city-comparison-cross-lane-bars {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
}

.city-comparison-cross-lane-bar {
    display: block;
    height: .48rem;
    border-radius: 999px;
    background: #dfe6ea;
}

.city-comparison-cross-lane-bar--left {
    background: linear-gradient(90deg, #6b8763 0%, #7b9a72 100%);
}

.city-comparison-cross-lane-bar--right {
    background: linear-gradient(90deg, #4a78bf 0%, #618fd4 100%);
}

.city-comparison-cross-lane-edge {
    font-size: .86rem;
    color: #425466;
    font-weight: 600;
}

.city-comparison-cross-lane-edge--right {
    text-align: right;
}

.city-comparison-cross-summary {
    display: flex;
    gap: .75rem;
    align-items: center;
    padding: .95rem 1rem;
    border-radius: 1rem;
    background: #eef5ef;
    border: 1px solid rgba(78, 114, 85, 0.18);
}

.city-comparison-cross-summary-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: #fff;
    color: #44715a;
    box-shadow: inset 0 0 0 1px rgba(68, 113, 90, 0.14);
}

.city-comparison-cross-summary p {
    margin: 0;
    color: #274036;
    font-weight: 600;
}

.city-comparison-quick-grid--cross-country {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.city-comparison-group-row th {
    background: #f5f7f8;
    color: #415469;
    font-size: .82rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.city-comparison-inline-helper,
.city-comparison-signal-dots {
    display: block;
    margin-top: .28rem;
    color: #6b7a88;
    font-size: .8rem;
}

.city-comparison-metric-cell--signal strong {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
}

.city-comparison-border-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.city-comparison-border-card {
    padding: 1.2rem;
    border-radius: 1.15rem;
    border: 1px solid rgba(20, 60, 100, 0.08);
    background: #fbf9f5;
}

.city-comparison-border-head h3,
.city-comparison-border-card p {
    margin: 0;
}

.city-comparison-border-city {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: .75rem;
    font-size: .93rem;
}

.city-comparison-border-city strong {
    color: #203245;
}

.city-comparison-border-city span {
    color: #546477;
    text-align: right;
}

.city-comparison-border-meter {
    position: relative;
    height: 1rem;
}

.city-comparison-border-meter-track {
    position: absolute;
    inset: .42rem 0 auto;
    height: .18rem;
    border-radius: 999px;
    background: linear-gradient(90deg, #6f8b68 0%, #d9e0e5 50%, #4d78bd 100%);
}

.city-comparison-border-meter-dot {
    position: absolute;
    top: .05rem;
    width: .9rem;
    height: .9rem;
    border-radius: 999px;
    background: #14365e;
    border: 3px solid #fff;
    box-shadow: 0 .1rem .35rem rgba(20, 54, 94, 0.22);
    transform: translateX(-50%);
}

.city-comparison-tradeoff-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.city-comparison-tradeoff-row {
    padding: 1rem 1.1rem;
    border-radius: 1rem;
    border: 1px solid rgba(20, 60, 100, 0.08);
    background: #fff;
}

.city-comparison-tradeoff-head h3 {
    margin: 0;
    font-size: 1.02rem;
}

.city-comparison-tradeoff-scale {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 2fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
}

.city-comparison-tradeoff-side {
    display: flex;
    flex-direction: column;
    gap: .18rem;
}

.city-comparison-tradeoff-side--right {
    text-align: right;
    align-items: flex-end;
}

.city-comparison-tradeoff-side strong {
    color: #203245;
}

.city-comparison-tradeoff-side span {
    color: #6b7a88;
    font-size: .88rem;
}

.city-comparison-tradeoff-track-wrap {
    position: relative;
    height: 1.5rem;
}

.city-comparison-tradeoff-track {
    position: absolute;
    inset: .62rem 0 auto;
    height: .24rem;
    border-radius: 999px;
    background: linear-gradient(90deg, #6f8b68 0%, #dfe6ea 50%, #4d78bd 100%);
}

.city-comparison-tradeoff-marker {
    position: absolute;
    top: .16rem;
    width: 1rem;
    height: 1rem;
    border-radius: 999px;
    background: #14365e;
    border: 3px solid #fff;
    box-shadow: 0 .15rem .4rem rgba(20, 54, 94, 0.2);
    transform: translateX(-50%);
}

.city-comparison-decision-drivers--cross-country .city-comparison-wide-panel {
    background: linear-gradient(180deg, #fff 0%, #fbf9f5 100%);
}

.city-comparison-decision-drivers--cross-country .city-comparison-driver-list {
    gap: .75rem;
}

.city-comparison-driver-row--icon {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr);
    align-items: start;
    justify-content: initial;
    gap: 1rem;
    padding: 1rem 1.1rem;
    border: 1px solid rgba(20, 60, 100, 0.08);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.86);
}

.city-comparison-driver-row--icon:first-child {
    border-top: 1px solid rgba(20, 60, 100, 0.08);
    padding-top: 1rem;
}

.city-comparison-driver-row--icon .city-comparison-driver-copy {
    max-width: none;
    display: grid;
    grid-template-columns: minmax(11rem, .42fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.city-comparison-driver-row--icon .city-comparison-driver-copy h3,
.city-comparison-driver-row--icon .city-comparison-driver-copy p {
    margin: 0;
}

.city-comparison-driver-row--icon .city-comparison-driver-copy p {
    color: #3f4d5f;
    line-height: 1.55;
}

.city-comparison-driver-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: .8rem;
    background: #f4f7f8;
    color: #264567;
    font-size: 1rem;
    box-shadow: inset 0 0 0 1px rgba(20, 60, 100, 0.04);
}

@media (max-width: 1024px) {
    .city-comparison-quick-grid--cross-country,
    .city-comparison-border-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .city-comparison-tradeoff-scale {
        grid-template-columns: 1fr;
    }

    .city-comparison-tradeoff-side--right,
    .city-comparison-cross-board-city--right {
        align-items: flex-start;
        text-align: left;
        justify-content: flex-start;
    }

    .city-comparison-driver-row--icon .city-comparison-driver-copy {
        grid-template-columns: 1fr;
        gap: .3rem;
    }
}

@media (max-width: 720px) {
    .city-comparison-cross-board-head,
    .city-comparison-cross-lane,
    .city-comparison-border-grid,
    .city-comparison-quick-grid--cross-country {
        grid-template-columns: 1fr;
    }

    .city-comparison-cross-board-city,
    .city-comparison-cross-board-city--right {
        justify-content: flex-start;
        text-align: left;
    }

    .city-comparison-hero-swap--cross-country {
        margin: 0 auto;
    }

    .city-comparison-cross-lane {
        gap: .35rem;
    }

    .city-comparison-cross-lane-edge--right {
        text-align: left;
    }

    .city-comparison-tradeoff-row,
    .city-comparison-border-card {
        padding: 1rem;
    }

    .city-comparison-driver-row--icon {
        grid-template-columns: 2.4rem minmax(0, 1fr);
        gap: .8rem;
        padding: .9rem;
    }
}

/* Comparison mobile layout refinements */
@media (max-width: 980px) {
    .city-comparison-hero-grid,
    .city-comparison-hero-grid--cross-country {
        grid-template-columns: 1fr;
    }

    .city-comparison-hero-panel,
    .city-comparison-hero-panel--cross-country {
        max-width: 100%;
    }
}

@media (max-width: 760px) {
    .city-comparison-detail-hero {
        padding: 2.2rem 0 1rem;
    }

    .city-comparison-detail-hero .container,
    .city-comparison-intro .container,
    .city-comparison-quick-answer .container,
    .city-comparison-core-table .container,
    .city-comparison-decision-drivers .container,
    .city-comparison-strengths .container,
    .city-comparison-local-context .container,
    .city-comparison-shortlist .container,
    .city-comparison-caveat .container,
    .city-comparison-cta-section .container,
    .city-comparison-related .container,
    .city-comparison-methodology .container,
    .city-comparison-border-factors .container,
    .city-comparison-tradeoff-map .container,
    body.route-comparisons .container {
        width: min(calc(100% - 1rem), var(--container));
    }

    .city-comparison-hero-copy,
    .city-comparison-hero-panel,
    .city-comparison-wide-panel,
    .city-comparison-split-panel,
    .city-comparison-hero-panel-inner {
        padding: .95rem;
        border-radius: 18px;
    }

    .city-comparison-description,
    .city-comparison-section-heading p {
        max-width: none;
    }

    .city-comparison-chip-row {
        gap: .42rem;
    }

    .city-comparison-chip {
        padding: .42rem .66rem;
        font-size: .84rem;
    }

    .hero-actions.city-comparison-actions,
    .city-comparison-actions,
    .city-comparison-cta-actions {
        display: grid;
        grid-template-columns: 1fr;
        gap: .62rem;
        justify-content: stretch;
        width: 100%;
    }

    .hero-actions.city-comparison-actions .button,
    .city-comparison-actions .button,
    .city-comparison-cta-actions .button,
    .city-comparison-cta-link {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .city-comparison-hero-head,
    .city-comparison-cross-board-head {
        grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
        gap: .5rem;
    }

    .city-comparison-hero-head h2,
    .city-comparison-cross-board-city h2 {
        font-size: 1.08rem;
        line-height: 1.15;
    }

    .city-comparison-hero-head p,
    .city-comparison-cross-board-city p,
    .city-comparison-cross-lane-edge,
    .city-comparison-snapshot-edge {
        font-size: .78rem;
        line-height: 1.25;
    }

    .city-comparison-hero-head-right,
    .city-comparison-cross-board-city--right {
        justify-content: flex-end;
        text-align: right;
        align-items: center;
    }

    .city-comparison-hero-swap,
    .city-comparison-hero-swap--cross-country {
        width: 2.2rem;
        height: 2.2rem;
        min-width: 2.2rem;
        font-size: .95rem;
        margin: 0 auto;
    }

    .city-comparison-flag {
        width: 2rem;
        height: 2rem;
        font-size: 1rem;
    }

    .city-comparison-cross-board-city {
        gap: .45rem;
        min-width: 0;
    }

    .city-comparison-cross-lane {
        grid-template-columns: 3.5rem minmax(0, 1fr) 3.5rem;
        gap: .45rem;
        align-items: center;
    }

    .city-comparison-cross-lane-edge--right {
        text-align: right;
    }

    .city-comparison-cross-lane-label {
        font-size: .82rem;
        line-height: 1.25;
        text-align: center;
    }

    .city-comparison-cross-summary {
        padding: .75rem .8rem;
        align-items: flex-start;
    }

    .city-comparison-snapshot-row {
        padding: .68rem;
    }

    .city-comparison-snapshot-row-head {
        justify-content: center;
    }

    .city-comparison-snapshot-row-body {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .55rem;
    }

    .city-comparison-snapshot-side--left,
    .city-comparison-snapshot-side--right {
        grid-template-columns: 1fr;
        gap: .3rem;
    }

    .city-comparison-snapshot-side--right .city-comparison-snapshot-bar,
    .city-comparison-snapshot-side--right .city-comparison-snapshot-edge {
        grid-column: auto;
        grid-row: auto;
    }

    .city-comparison-snapshot-edge--right,
    .city-comparison-snapshot-side--right .city-comparison-snapshot-edge {
        text-align: right;
    }

    .city-comparison-verdict-strip {
        gap: .55rem;
    }

    .city-comparison-verdict-item {
        padding: .78rem;
    }

    .city-comparison-quick-grid,
    .city-comparison-quick-grid--cross-country {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .city-comparison-quick-item {
        padding: .72rem 0;
        border-left: 0 !important;
        border-top: 1px solid rgba(16, 24, 40, 0.08);
    }

    .city-comparison-quick-item:first-child {
        border-top: 0;
        padding-top: .25rem;
    }

    .city-comparison-split-grid,
    .city-comparison-border-grid,
    .city-comparison-context-grid,
    .city-comparison-method-grid,
    .city-comparison-related-grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: .75rem;
        overflow: visible;
        padding: 0;
        scroll-snap-type: none;
    }

    .city-comparison-split-grid > *,
    .city-comparison-border-grid > *,
    .city-comparison-context-grid > *,
    .city-comparison-method-grid > *,
    .city-comparison-related-grid > * {
        min-width: 0;
        width: 100%;
        scroll-snap-align: none;
    }

    .city-comparison-strength-item {
        grid-template-columns: 1fr;
        gap: .5rem;
    }

    .city-comparison-border-card,
    .city-comparison-tradeoff-row,
    .city-comparison-method-item,
    .city-comparison-context-column {
        padding: .9rem;
        border-radius: 16px;
    }

    .city-comparison-tradeoff-scale {
        grid-template-columns: minmax(0, 1fr) minmax(6rem, 1.15fr) minmax(0, 1fr);
        gap: .55rem;
    }

    .city-comparison-tradeoff-side,
    .city-comparison-tradeoff-side--right {
        align-items: flex-start;
        text-align: left;
    }

    .city-comparison-tradeoff-side--right {
        align-items: flex-end;
        text-align: right;
    }

    .city-comparison-cta-strip {
        grid-template-columns: 1fr;
        padding: 1rem;
        border-radius: 18px;
    }

    .city-comparison-related-row {
        align-items: flex-start;
        border: 1px solid rgba(16, 24, 40, 0.08);
        border-radius: 16px;
        padding: .85rem;
        background: #fff;
    }

    .city-comparison-table-wrap {
        overflow: visible;
    }

    .city-comparison-table,
    .city-comparison-table thead,
    .city-comparison-table tbody,
    .city-comparison-table tr,
    .city-comparison-table th,
    .city-comparison-table td {
        display: block;
        width: 100%;
        min-width: 0;
    }

    .city-comparison-table {
        border-spacing: 0;
        min-width: 0;
    }

    .city-comparison-table thead {
        display: none;
    }

    .city-comparison-table tbody {
        display: grid;
        gap: .65rem;
    }

    .city-comparison-table tbody tr:not(.city-comparison-group-row) {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: .62rem;
        padding: .82rem;
        border: 1px solid rgba(16, 24, 40, 0.08);
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 6px 20px rgba(15, 23, 42, 0.04);
    }

    .city-comparison-table tbody th,
    .city-comparison-table tbody td {
        padding: 0;
        border-bottom: 0;
        background: transparent;
    }

    .city-comparison-table tbody th[scope="row"] {
        grid-column: 1 / -1;
        color: #101828;
        font-size: .98rem;
        line-height: 1.25;
    }

    .city-comparison-table td::before {
        content: attr(data-label);
        display: block;
        margin-bottom: .25rem;
        color: #667085;
        font-size: .72rem;
        font-weight: 800;
        letter-spacing: .04em;
        line-height: 1.2;
        text-transform: uppercase;
    }

    .city-comparison-table .city-comparison-meaning-cell {
        grid-column: 1 / -1;
        padding-top: .58rem;
        border-top: 1px solid rgba(16, 24, 40, 0.08);
        font-size: .9rem;
        line-height: 1.45;
    }

    .city-comparison-group-row {
        padding: .25rem .1rem 0;
    }

    .city-comparison-group-row th {
        padding: .4rem .15rem .15rem;
        border-bottom: 0;
        background: transparent;
        color: #415469;
    }

    .city-comparison-baseline-note {
        text-align: left;
    }
}

@media (max-width: 760px) {
    body.route-comparisons .page-hero {
        padding-top: 2rem;
        padding-bottom: .7rem;
    }

    .comparisons-hero-shell,
    .comparisons-section-panel,
    .comparisons-band-panel {
        padding: .95rem;
        border-radius: 18px;
    }

    .comparisons-hero-grid {
        grid-template-columns: 1fr;
        gap: .8rem;
    }

    .comparisons-hero-visual {
        display: none;
    }

    .comparisons-chip-row {
        gap: .38rem;
    }

    .comparisons-chip {
        min-height: 1.8rem;
        padding: .25rem .62rem;
        font-size: .82rem;
    }

    .comparisons-featured-table tbody {
        gap: .58rem;
        padding: .55rem;
    }

    .comparisons-featured-table tbody tr {
        padding: .78rem;
        border-radius: 16px;
        box-shadow: none;
    }

    .comparisons-featured-table th[scope="row"],
    .comparisons-featured-table td {
        padding: .32rem 0;
    }

    .comparisons-featured-table td {
        display: flex;
        justify-content: space-between;
        gap: 1rem;
        border-bottom: 1px solid rgba(26, 31, 54, 0.06);
        text-align: right;
    }

    .comparisons-featured-table td::before {
        flex: 0 0 auto;
        margin: 0;
        text-align: left;
    }

    .comparisons-featured-table td:last-child {
        display: block;
        border-bottom: 0;
        text-align: left;
    }

    .comparisons-row-note,
    .comparisons-browse-note-inline,
    .comparisons-browse-copy span {
        display: none;
    }

    .comparisons-browse-grid {
        display: grid;
        grid-template-columns: 1fr;
        gap: .8rem;
    }

    .comparisons-browse-lane {
        padding: .85rem;
        border-radius: 16px;
    }

    .comparisons-browse-head {
        padding-bottom: .65rem;
    }

    .comparisons-browse-icon {
        width: 2.4rem;
        height: 2.4rem;
    }

    .comparisons-browse-item,
    .comparisons-related-item {
        flex-direction: row;
        align-items: center;
        gap: .75rem;
        padding: .65rem 0;
    }

    .comparisons-browse-copy,
    .comparisons-related-copy {
        min-width: 0;
    }

    .comparisons-browse-action-block {
        justify-items: end;
        flex: 0 0 auto;
    }

    .comparisons-row-links,
    .comparisons-browse-actions {
        justify-content: flex-start;
        gap: .38rem;
    }

    .comparisons-band-grid,
    .comparisons-step-list {
        grid-template-columns: 1fr;
    }

    .comparisons-step-list {
        gap: .72rem;
    }

    .comparisons-step-item {
        grid-template-columns: 1.8rem minmax(0, 1fr);
        gap: .62rem;
    }
}

/* Countries index card cleanup: country title, currency and compact planning copy */
.countries-country-card{padding:1.2rem 1.22rem;gap:.92rem}
.countries-card-topline{align-items:flex-start;gap:.8rem}
.countries-country-identity{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;padding:0;border:0;background:transparent;box-shadow:none}
.countries-country-identity h3{margin:0;font-size:1.22rem;line-height:1.22}
.countries-country-identity h3 a{color:var(--text);text-decoration:none}
.countries-country-identity h3 a:hover{color:var(--primary-dark);text-decoration:underline}
.countries-currency-pill{padding:.28rem .52rem;background:rgba(255,255,255,.94);border-color:rgba(26,31,54,.1);font-size:.74rem;font-weight:800;color:var(--text-secondary)}
.countries-card-header{gap:.35rem}
.countries-country-kicker{margin:0;color:var(--muted)}
.countries-card-notes{gap:.65rem}
.countries-card-note{padding:.68rem .76rem}
.countries-card-actions{margin-top:auto;justify-content:flex-start;align-items:flex-start}
.countries-card-pill{max-width:18rem;padding:.36rem .58rem;font-size:.82rem}
.countries-card-pill-label{font-size:.62rem}
@media(max-width:760px){.countries-card-topline{align-items:flex-start}.countries-card-pill{max-width:100%}}

/* Countries index quick directory */
.countries-hero-directory{
    margin-top:1.15rem;
    padding:1rem;
    border:1px solid rgba(26,31,54,.08);
    border-radius:24px;
    background:rgba(255,255,255,.72);
    box-shadow:0 18px 42px rgba(26,31,54,.06);
}
.countries-hero-directory-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.75rem;
    flex-wrap:wrap;
    margin-bottom:.75rem;
}
.countries-hero-directory-head p{
    margin:0;
    color:var(--muted);
    font-size:.93rem;
}
.countries-supported-count{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    color:var(--text)!important;
    font-weight:700;
}
.countries-supported-count strong{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:2.2rem;
    height:2.2rem;
    padding:0 .55rem;
    border-radius:999px;
    background:var(--primary-soft);
    color:var(--primary-dark);
    font-size:1rem;
}
.countries-jump-list{
    display:flex;
    gap:.5rem;
    flex-wrap:wrap;
}
.countries-jump-chip{
    display:inline-flex;
    align-items:center;
    gap:.38rem;
    min-height:2.15rem;
    padding:.38rem .68rem;
    border:1px solid rgba(26,31,54,.08);
    border-radius:999px;
    background:#fff;
    color:var(--text);
    font-size:.88rem;
    font-weight:650;
    text-decoration:none;
    box-shadow:0 8px 20px rgba(26,31,54,.045);
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.countries-jump-chip:hover{
    transform:translateY(-1px);
    border-color:rgba(235,91,72,.35);
    box-shadow:0 12px 26px rgba(26,31,54,.08);
    color:var(--primary-dark);
}
.countries-jump-flag{
    font-size:1.05rem;
    line-height:1;
}
.countries-country-card{
    scroll-margin-top:90px;
}
@media(max-width:760px){
    .countries-hero-directory{padding:.85rem;border-radius:20px}
    .countries-hero-directory-head{align-items:flex-start}
    .countries-jump-list{max-height:12.5rem;overflow:auto;padding-right:.15rem}
    .countries-jump-chip{font-size:.84rem;padding:.34rem .58rem}
}

/* Lead assist form */
.lead-assist-card {
    width: min(calc(100% - 2rem), var(--container));
    margin: clamp(1.25rem, 3vw, 2.4rem) auto;
    padding: clamp(1.15rem, 2.8vw, 1.9rem);
    max-width: none;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(253,250,247,.98) 100%);
    box-shadow: 0 14px 30px rgba(15, 23, 42, .06);
}

.lead-assist-card--inline,
.lead-assist-card--after-result,
.lead-assist-card--bottom {
    width: min(calc(100% - 2rem), var(--container));
    max-width: none;
}

.lead-assist-form {
    display: block;
}

.lead-assist-card--inline {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.lead-assist-card--after-result {
    margin-top: 1.25rem;
}


.lead-assist-card__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(230px, 265px);
    gap: 1rem 1.25rem;
    align-items: start;
    margin-bottom: 1.15rem;
}

.lead-assist-card__intro {
    max-width: 640px;
}

.lead-assist-card__intro h2 {
    margin: 0 0 .55rem;
    color: #121a3a;
    font-size: clamp(2rem, 3vw, 3rem);
    line-height: 1.03;
    letter-spacing: -.03em;
}

.lead-assist-card__intro p {
    margin: 0;
    color: #55637d;
    font-size: 1.02rem;
    line-height: 1.65;
}

.lead-assist-card__eyebrow {
    margin: 0 0 .55rem;
    color: #ee3f24;
    font-size: .8rem;
    font-weight: 850;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.lead-country-header {
    display: grid;
    gap: .42rem;
    justify-self: end;
    width: min(100%, 255px);
}

.lead-country-header__label {
    color: #6b7280;
    font-size: .82rem;
    font-weight: 750;
}

.lead-country-header__control {
    position: relative;
    display: block;
}

.lead-country-header select {
    width: 100%;
    min-height: 52px;
    padding: .8rem .95rem;
    border: 1px solid rgba(15, 23, 42, .12);
    border-radius: 16px;
    background: #fff;
    color: #18213f;
    font: inherit;
    font-weight: 760;
    box-shadow: 0 7px 16px rgba(15, 23, 42, .035);
    outline: none;
    cursor: pointer;
}

.lead-country-header select:focus {
    border-color: rgba(236, 91, 63, .52);
    box-shadow: 0 0 0 3px rgba(236, 91, 63, .08);
}

.lead-assist-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(210px, 240px);
    gap: 1rem;
    align-items: stretch;
}

.lead-assist-form-card,
.lead-assist-trust-card {
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 22px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 10px 22px rgba(15, 23, 42, .04);
}

.lead-assist-form-card {
    display: grid;
    gap: .95rem;
    padding: 1.2rem;
}

.lead-assist-grid label,
.lead-contact-grid label,
.lead-message-field {
    display: grid;
    gap: .38rem;
    color: #111827;
    font-weight: 760;
}

.lead-assist-grid input,
.lead-contact-grid input,
.lead-message-field textarea {
    width: 100%;
    border: 1px solid rgba(15, 23, 42, .12);
    border-radius: 14px;
    background: #fff;
    color: #111827;
    font: inherit;
    padding: .82rem .95rem;
    outline: none;
    transition: border-color .18s ease, box-shadow .18s ease;
}

.lead-assist-grid input:focus,
.lead-contact-grid input:focus,
.lead-message-field textarea:focus {
    border-color: rgba(236, 91, 63, .52);
    box-shadow: 0 0 0 3px rgba(236, 91, 63, .08);
}

.lead-assist-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .95rem;
}

.lead-contact-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .85rem;
}

.lead-field-with-icon {
    position: relative;
}

.lead-field-with-icon input {
    padding-left: .95rem;
}

.lead-contact-hint {
    margin: -.15rem 0 0;
    color: #6b7280;
    font-size: .9rem;
    line-height: 1.5;
}

.lead-goals-fieldset {
    margin: 0;
    padding: 0;
    border: 0;
}

.lead-goals-fieldset legend {
    margin-bottom: .65rem;
    color: #111827;
    font-weight: 850;
}

.lead-goals-grid {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.lead-checkbox-pill {
    position: relative;
    display: inline-flex;
    align-items: center;
    cursor: pointer;
}

.lead-checkbox-pill input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.lead-checkbox-pill span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: .62rem .84rem;
    border: 1px solid rgba(15, 23, 42, .1);
    border-radius: 999px;
    background: #fff;
    color: #26314d;
    font-weight: 740;
    line-height: 1.2;
    transition: all .18s ease;
}

.lead-checkbox-pill input:checked + span {
    border-color: rgba(236, 91, 63, .58);
    background: rgba(255, 244, 240, 1);
    color: #d64f34;
    box-shadow: 0 5px 14px rgba(236, 91, 63, .09);
}

.lead-checkbox-pill input:checked + span::before {
    content: '✓';
    display: inline-grid;
    place-items: center;
    width: 1.05rem;
    height: 1.05rem;
    margin-right: .1rem;
    color: #ec5b3f;
    font-weight: 900;
    line-height: 1;
}

.lead-message-field textarea {
    min-height: 96px;
    resize: vertical;
    line-height: 1.55;
}

.lead-assist-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(250px, 300px);
    gap: 1rem;
    align-items: end;
}

.lead-consent-note {
    color: #566277;
    font-size: .92rem;
    line-height: 1.5;
}

.lead-consent-note label {
    display: flex;
    gap: .58rem;
    align-items: flex-start;
}

.lead-consent-note input {
    margin-top: .2rem;
}

.lead-submit-wrap {
    display: grid;
    gap: .45rem;
    justify-items: stretch;
}

.lead-submit-button {
    width: 100%;
    min-height: 50px;
    border-radius: 14px;
}

.lead-response-note {
    margin: 0;
    color: #7b8494;
    font-size: .88rem;
    text-align: center;
}

.lead-assist-trust {
    display: grid;
    gap: .95rem;
}

.lead-assist-trust-card {
    padding: 1.1rem;
    min-height: 168px;
}

.lead-assist-trust-icon {
    display: inline-grid;
    place-items: center;
    width: 44px;
    height: 44px;
    margin-bottom: .82rem;
    border-radius: 999px;
    font-size: 1.05rem;
    font-weight: 800;
}

.lead-assist-trust-icon svg {
    width: 25px;
    height: 25px;
}

.lead-assist-trust-icon--shield {
    background: rgba(255, 235, 229, 1);
    color: #ee3f24;
}

.lead-assist-trust-icon--globe {
    background: rgba(255, 235, 229, 1);
    color: #ec5b3f;
}

.lead-assist-trust-card strong {
    display: block;
    margin-bottom: .35rem;
    color: #141c3a;
    font-size: 1.05rem;
    line-height: 1.25;
}

.lead-assist-trust-card p {
    margin: 0;
    color: #697586;
    font-size: .93rem;
    line-height: 1.55;
}

.lead-form-status {
    display: inline-flex;
    margin-top: .95rem !important;
    padding: .85rem 1rem;
    border-radius: 18px;
    font-weight: 800;
    line-height: 1.5;
}

.lead-form-status[hidden],
.lead-form-status:empty {
    display: none !important;
}

.lead-form-status--success {
    color: #1f5d49;
    background: #d5f2e2;
}

.lead-form-status--error {
    color: #991b1b;
    background: #fee2e2;
}

.lead-hp-field {
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 980px) {
    .lead-assist-card__header,
    .lead-assist-layout,
    .lead-assist-actions {
        grid-template-columns: 1fr;
    }

    .lead-country-header {
        justify-self: start;
    }

    .lead-assist-trust {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .lead-assist-card {
        border-radius: 22px;
        padding: 1rem;
    }

    .lead-assist-card__intro h2 {
        font-size: 2rem;
    }

    .lead-assist-grid,
    .lead-contact-grid,
    .lead-assist-trust {
        grid-template-columns: 1fr;
    }

    .lead-checkbox-pill,
    .lead-checkbox-pill span {
        width: 100%;
    }

    .lead-checkbox-pill span {
        justify-content: flex-start;
    }
}

/* Lead form visual polish: stronger eyebrow, calmer effects, mobile compact mode */
.lead-assist-card__intro .lead-assist-card__eyebrow {
    color: #ee3f24 !important;
}

.lead-goals-legend-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.lead-specialist-details {
    display: block;
    border: 1px solid rgba(15, 23, 42, .1);
    border-radius: 16px;
    background: #fff;
    padding: .85rem .95rem;
    box-shadow: 0 6px 14px rgba(15, 23, 42, .035);
}

.lead-specialist-details summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0;
    color: #111827;
    font-weight: 850;
    list-style: none;
    cursor: pointer;
}

.lead-specialist-details[open] summary {
    margin-bottom: .65rem;
}

.lead-specialist-details summary::-webkit-details-marker {
    display: none;
}

.lead-specialist-details summary::after {
    content: '+';
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    width: 1.55rem;
    height: 1.55rem;
    border-radius: 999px;
    background: rgba(238, 63, 36, .08);
    color: #ee3f24;
    font-size: 1.05rem;
    font-weight: 850;
}

.lead-specialist-details[open] summary::after {
    content: '−';
}

.lead-specialist-details__hint {
    color: #9aa3b2;
    font-size: .88rem;
    font-weight: 700;
}

.lead-specialist-details__body {
    display: grid;
    gap: .95rem;
}

.lead-checkbox-pill input:checked + span::before {
    content: '✓';
    display: inline-grid;
    place-items: center;
    width: 1.1rem;
    height: 1.1rem;
    margin-right: .16rem;
    color: #ee3f24;
    font-weight: 900;
    line-height: 1;
}

.lead-assist-trust-icon--shield,
.lead-assist-trust-icon--globe {
    background: rgba(255, 235, 229, 1);
    color: #ee3f24;
}

@media (max-width: 720px) {
    .lead-assist-trust {
        display: none !important;
    }

    .lead-specialist-details {
        border: 1px solid rgba(15, 23, 42, .1);
        border-radius: 16px;
        background: #fff;
        padding: .85rem .95rem;
        box-shadow: 0 6px 14px rgba(15, 23, 42, .035);
    }

    .lead-specialist-details summary {
        margin-bottom: 0;
        cursor: pointer;
    }

    .lead-specialist-details summary::after {
        content: '+';
        display: inline-grid;
        place-items: center;
        flex: 0 0 auto;
        width: 1.55rem;
        height: 1.55rem;
        border-radius: 999px;
        background: rgba(238, 63, 36, .08);
        color: #ee3f24;
        font-size: 1.05rem;
        font-weight: 850;
    }

    .lead-specialist-details[open] summary {
        margin-bottom: .75rem;
    }

    .lead-specialist-details[open] summary::after {
        content: '−';
    }

    .lead-specialist-details__hint {
        margin-left: auto;
        color: #ee3f24;
    }

    .lead-specialist-details[open] .lead-specialist-details__hint {
        display: none;
    }
}

/* Keep lead forms aligned with regular site containers when rendered inside content stacks. */
.container > .lead-assist-card,
.stack-lg > .lead-assist-card,
.stack-md > .lead-assist-card {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

/* Cities index: country headings should not link to unpublished country pages, but still show clear country identity. */
.cities-country-header {
    align-items: center;
}

.cities-country-title {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    margin: 0;
}

.country-flag-widget {
    display: inline-grid;
    place-items: center;
    width: 2.15rem;
    height: 2.15rem;
    border-radius: 999px;
    background: #fff;
    border: 1px solid rgba(15, 23, 42, .08);
    box-shadow: 0 7px 16px rgba(15, 23, 42, .045);
    font-size: 1.25rem;
    line-height: 1;
}

/* Cities index SEO cards: unique relocation profiles instead of repeated boilerplate. */
.city-profile-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 1rem;
}

.city-profile-summary {
    color: #475569;
    line-height: 1.62;
}

.city-signal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
    margin-top: .15rem;
}

.city-signal {
    padding: .75rem .8rem;
    border: 1px solid rgba(15, 23, 42, .08);
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .92));
}

.city-signal span {
    display: block;
    margin-bottom: .25rem;
    color: #7a8496;
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.city-signal strong {
    display: block;
    color: #172033;
    font-size: .94rem;
    line-height: 1.25;
}

.city-best-for {
    display: grid;
    gap: .55rem;
    padding-top: .15rem;
}

.city-best-for > span {
    color: #111827;
    font-weight: 850;
}

.city-best-for__chips {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
}

.city-watchout {
    margin: .1rem 0 0;
    padding: .78rem .9rem;
    border-radius: 16px;
    background: rgba(255, 247, 237, .78);
    color: #6b4c2f;
    line-height: 1.55;
}

.city-watchout strong {
    color: #9a521d;
}

.city-data-note {
    margin: 0;
    color: #7a8496;
    font-size: .86rem;
    line-height: 1.45;
}

@media (max-width: 720px) {
    .city-signal-grid {
        grid-template-columns: 1fr;
    }
}

/* City cards: richer city profiles and clearer city-type icons. */
.city-type-icon {
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(232, 96, 76, .13), rgba(245, 158, 11, .09));
    border-color: rgba(232, 96, 76, .18);
}

.city-type-icon--capital {
    background: linear-gradient(135deg, rgba(232, 96, 76, .16), rgba(245, 158, 11, .12));
    border-color: rgba(232, 96, 76, .22);
}

.city-type-icon--metro {
    background: linear-gradient(135deg, rgba(45, 106, 90, .13), rgba(56, 189, 248, .11));
    border-color: rgba(45, 106, 90, .2);
}

.city-type-icon--city {
    background: linear-gradient(135deg, rgba(45, 106, 90, .12), rgba(232, 96, 76, .09));
    border-color: rgba(45, 106, 90, .17);
}

.city-type-icon--regional {
    background: linear-gradient(135deg, rgba(148, 163, 184, .14), rgba(245, 158, 11, .1));
    border-color: rgba(148, 163, 184, .24);
}

.city-profile-summary {
    color: #374151;
    font-size: .98rem;
    line-height: 1.68;
}

.city-profile-detail,
.city-profile-planning {
    margin: 0;
    color: #526072;
    font-size: .94rem;
    line-height: 1.62;
}

.city-profile-planning {
    padding: .78rem .9rem;
    border: 1px solid rgba(45, 106, 90, .1);
    border-radius: 16px;
    background: rgba(247, 252, 250, .88);
}

.city-profile-card .inline-card-cta {
    align-self: flex-start;
}

.country-city-card .country-card-bullets li {
    line-height: 1.58;
}

/* PARTNER OFFERS */
.partner-offers-section{padding:0.7rem 0 1.2rem}
.partner-offers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.partner-offers-grid--single{grid-template-columns:1fr}
.partner-offer-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.34fr);gap:1.1rem;padding:1.25rem;border:1px solid rgba(232,96,76,.16);border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(255,255,255,.97),rgba(255,246,241,.86));box-shadow:0 12px 42px rgba(26,31,54,.07);overflow:hidden}
.partner-offer-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(232,96,76,.12),transparent 34%);pointer-events:none}
.partner-offer-card>*{position:relative;z-index:1}
.partner-offer-topline{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;margin-bottom:.15rem}
.partner-offer-label,.partner-offer-validity{display:inline-flex;align-items:center;min-height:28px;padding:.22rem .68rem;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.partner-offer-label{background:var(--primary-soft);color:var(--primary-dark);border:1px solid rgba(232,96,76,.17)}
.partner-offer-validity{background:rgba(255,255,255,.82);color:var(--text-secondary);border:1px solid rgba(26,31,54,.08)}
.partner-offer-card h2{margin:0;font-size:clamp(1.35rem,2.1vw,1.95rem)}
.partner-offer-lead{font-size:1.04rem;color:var(--text);font-weight:600;line-height:1.62}
.partner-offer-card p{margin:0;color:var(--text-secondary)}
.partner-offer-list{display:grid;gap:.45rem;margin:.2rem 0 0;padding-left:1.15rem;color:var(--text-secondary)}
.partner-offer-card__side{display:flex;flex-direction:column;gap:.8rem;align-self:start}
.partner-offer-meta-box,.partner-offer-coupon{padding:.9rem 1rem;border-radius:16px;border:1px solid rgba(26,31,54,.07);background:rgba(255,255,255,.78)}
.partner-offer-meta-box span,.partner-offer-coupon span{display:block;margin-bottom:.25rem;color:var(--muted);font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.partner-offer-meta-box strong,.partner-offer-coupon strong{display:block;color:var(--text);font-size:1rem;line-height:1.35;overflow-wrap:anywhere}
.partner-offer-coupon strong{font-size:1.15rem;color:var(--primary-dark)}
.partner-offer-coupon p{margin-top:.35rem;font-size:.92rem}
.partner-offer-actions{display:grid;gap:.6rem}
.partner-offer-actions .button{width:100%}
.partner-offer-contact-text{font-size:.92rem;line-height:1.55}
.partner-offer-disclaimer{grid-column:1/-1;padding-top:.85rem;border-top:1px solid rgba(26,31,54,.08);font-size:.9rem;line-height:1.55;color:var(--muted)!important}
@media (max-width:760px){.partner-offer-card{grid-template-columns:1fr}.partner-offer-card__side{width:100%}.partner-offer-actions .button{width:auto;justify-content:flex-start}}

/* Tools index: put calculators first and make them the main product */
body.route-tools .site-content{
    padding-bottom: 3.8rem;
}

.tools-index-hero{
    position: relative;
    padding: clamp(3rem, 6vw, 5.5rem) 0 clamp(1.4rem, 3vw, 2.4rem);
}

.tools-index-hero::before{
    content: '';
    position: absolute;
    inset: -5rem 0 auto;
    height: 28rem;
    background:
        radial-gradient(circle at 18% 26%, rgba(232, 96, 76, .13), transparent 34%),
        radial-gradient(circle at 82% 20%, rgba(245, 179, 95, .16), transparent 35%);
    pointer-events: none;
    z-index: -1;
}

.tools-index-hero__grid{
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(340px, .86fr);
    gap: clamp(1.4rem, 4vw, 4rem);
    align-items: center;
}

.tools-index-hero__copy{
    display: grid;
    gap: 1.08rem;
    max-width: 720px;
}

.tools-index-hero__description{
    margin-bottom: 0;
    max-width: 48rem;
}

.tools-index-hero__actions{
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: .35rem;
}

.tools-index-hero__chips{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .55rem;
    margin: .18rem 0 .12rem;
    align-items: stretch;
}

.tools-index-chip{
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: .42rem;
    min-height: 2.45rem;
    padding: .46rem .58rem .46rem .48rem;
    border: 1px solid rgba(26, 31, 54, .07);
    border-radius: 999px;
    background: rgba(255, 255, 255, .88);
    color: var(--text-secondary);
    font-size: .78rem;
    font-weight: 760;
    line-height: 1.25;
    white-space: normal;
    box-shadow: 0 10px 24px rgba(26, 31, 54, .045);
}

.tools-index-chip__icon{
    display: inline-grid;
    place-items: center;
    width: 1.62rem;
    height: 1.62rem;
    flex: 0 0 1.62rem;
    border-radius: 999px;
    background: rgba(232, 96, 76, .11);
    color: var(--primary-dark);
}

.tools-index-chip__icon svg{
    width: .92rem;
    height: .92rem;
}

.tools-index-hero__visual{
    position: relative;
    display: grid;
    place-items: center;
    min-height: 350px;
}

.tools-index-hero__visual::before{
    content: '';
    position: absolute;
    inset: 10% 8% 5%;
    border-radius: 999px;
    background: radial-gradient(circle, rgba(232, 96, 76, .13), transparent 64%);
    filter: blur(18px);
}

.tools-index-hero__visual img{
    position: relative;
    width: min(100%, 520px);
    height: auto;
}

.tools-index-primary{
    padding: .8rem 0 clamp(1.4rem, 3vw, 2.5rem);
    scroll-margin-top: 7rem;
}

.tools-index-primary__shell{
    position: relative;
    overflow: hidden;
    padding: clamp(1.1rem, 2.8vw, 2.3rem);
    border: 1px solid rgba(232, 96, 76, .12);
    border-radius: 34px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(255, 250, 246, .94)),
        radial-gradient(circle at 12% 12%, rgba(232, 96, 76, .08), transparent 32%);
    box-shadow: 0 26px 80px rgba(26, 31, 54, .10);
}

.tools-index-primary__shell::before,
.tools-index-primary__shell::after{
    content: '';
    position: absolute;
    border-radius: 999px;
    pointer-events: none;
}

.tools-index-primary__shell::before{
    width: 18rem;
    height: 18rem;
    top: -10rem;
    right: -7rem;
    background: rgba(232, 96, 76, .10);
}

.tools-index-primary__shell::after{
    width: 22rem;
    height: 22rem;
    bottom: -14rem;
    left: -10rem;
    background: rgba(245, 179, 95, .13);
}

.tools-index-primary__heading{
    position: relative;
    z-index: 1;
    max-width: 760px;
    margin: 0 auto clamp(1.4rem, 3vw, 2.1rem);
    text-align: center;
}

.tools-index-primary__heading h2{
    margin-bottom: .55rem;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
}

.tools-index-primary__heading p:last-child{
    margin: 0 auto;
    max-width: 46rem;
    color: var(--text-secondary);
}

.tools-index-group{
    position: relative;
    z-index: 1;
    display: grid;
    gap: 1.1rem;
}

.tools-index-group + .tools-index-group{
    margin-top: clamp(1.7rem, 3.2vw, 2.7rem);
    padding-top: clamp(1.3rem, 2.5vw, 2.1rem);
    border-top: 1px solid rgba(26, 31, 54, .07);
}

.tools-index-group__intro{
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .9rem;
    align-items: start;
    max-width: 760px;
}

.tools-index-group__marker{
    display: inline-grid;
    place-items: center;
    width: 2.55rem;
    height: 2.55rem;
    border-radius: 16px;
    background: linear-gradient(135deg, rgba(232, 96, 76, .16), rgba(255, 255, 255, .95));
    color: var(--primary-dark);
    font-weight: 900;
    letter-spacing: .04em;
    box-shadow: 0 10px 22px rgba(232, 96, 76, .08);
}

.tools-index-group__intro h3{
    margin-bottom: .3rem;
    font-size: clamp(1.35rem, 2vw, 1.9rem);
}

.tools-index-group__intro p:not(.mini-label){
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.65;
}

.tools-index-grid{
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 1rem;
}

.tools-index-card{
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 1rem;
    border: 1px solid rgba(26, 31, 54, .08);
    border-radius: 24px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 14px 34px rgba(26, 31, 54, .065);
    transition: transform .22s var(--ease-out), box-shadow .22s var(--ease-out), border-color .22s var(--ease-out);
}

.tools-index-card:hover{
    transform: translateY(-5px);
    border-color: rgba(232, 96, 76, .26);
    box-shadow: 0 24px 54px rgba(26, 31, 54, .11);
}

.tools-index-card__topline{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    min-height: 1.8rem;
}

.tools-index-card__badge,
.tools-index-card__code{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 850;
    line-height: 1;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.tools-index-card__badge{
    min-height: 1.55rem;
    padding: .28rem .5rem;
    border: 1px solid rgba(232, 96, 76, .20);
    background: rgba(255, 243, 239, .95);
    color: var(--primary-dark);
}

.tools-index-card__code{
    width: 1.85rem;
    height: 1.85rem;
    background: rgba(26, 31, 54, .04);
    color: var(--muted);
}

.tools-index-card__icon{
    display: grid;
    place-items: center;
    width: 5.25rem;
    height: 5.25rem;
    margin: 1rem 0 .95rem;
    border-radius: 24px;
    background:
        radial-gradient(circle at 32% 24%, rgba(255, 255, 255, .95), transparent 36%),
        linear-gradient(135deg, rgba(232, 96, 76, .18), rgba(245, 179, 95, .18));
    color: var(--primary-dark);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.8), 0 12px 24px rgba(232, 96, 76, .10);
}

.tools-index-card__icon svg{
    width: 3.7rem;
    height: 3.7rem;
}

.tools-index-card h4{
    margin: 0 0 .48rem;
    font-family: var(--font-heading);
    font-size: clamp(1.05rem, 1.25vw, 1.27rem);
    line-height: 1.14;
    letter-spacing: -.025em;
    color: var(--text);
}

.tools-index-card p{
    margin: 0;
    color: var(--text-secondary);
    font-size: .94rem;
    line-height: 1.58;
}

.tools-index-card__cta{
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    min-height: 2.75rem;
    margin-top: auto;
    padding: .67rem .8rem;
    border: 1px solid rgba(232, 96, 76, .35);
    border-radius: 14px;
    color: var(--primary-dark);
    font-size: .88rem;
    font-weight: 850;
    line-height: 1.15;
    transition: all .2s var(--ease-out);
}

.tools-index-card__cta:hover{
    background: linear-gradient(135deg, var(--primary), #d94d3a);
    color: #fff;
    border-color: transparent;
    box-shadow: 0 12px 26px rgba(232, 96, 76, .22);
}

.tools-index-guide{
    padding: clamp(1rem, 2.5vw, 2.2rem) 0;
    scroll-margin-top: 7rem;
}

.tools-index-guide__shell{
    display: grid;
    gap: 1.2rem;
    padding: clamp(1.05rem, 2.4vw, 1.6rem);
    border: 1px solid rgba(26, 31, 54, .07);
    border-radius: 28px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(250, 248, 245, .88));
    box-shadow: 0 12px 32px rgba(26, 31, 54, .055);
}

.tools-index-guide__heading{
    max-width: 850px;
}

.tools-index-guide__heading h2{
    margin-bottom: .45rem;
}

.tools-index-guide__heading p:last-child{
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.65;
}

.tools-index-guide__steps{
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .9rem;
}

.tools-index-guide-step{
    position: relative;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .8rem;
    padding: 1rem;
    border: 1px solid rgba(26, 31, 54, .06);
    border-radius: 22px;
    background: rgba(255, 255, 255, .8);
}

.tools-index-guide-step__number{
    display: inline-grid;
    place-items: center;
    width: 2.45rem;
    height: 2.45rem;
    border-radius: 999px;
    background: rgba(232, 96, 76, .10);
    color: var(--primary-dark);
    font-weight: 900;
}

.tools-index-guide-step h3{
    margin-bottom: .35rem;
    font-size: 1.07rem;
    line-height: 1.3;
}

.tools-index-guide-step p:last-child{
    margin: 0;
    color: var(--text-secondary);
    font-size: .94rem;
    line-height: 1.58;
}

.tools-index-guide__actions{
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
}

.tools-index-guide-chip{
    display: inline-flex;
    align-items: center;
    min-height: 2.55rem;
    padding: .58rem .88rem;
    border: 1px solid rgba(26, 31, 54, .08);
    border-radius: 999px;
    background: #fff;
    color: var(--text);
    font-size: .9rem;
    font-weight: 760;
    box-shadow: 0 8px 18px rgba(26, 31, 54, .035);
    transition: all .2s var(--ease-out);
}

.tools-index-guide-chip:hover{
    transform: translateY(-1px);
    border-color: rgba(232, 96, 76, .28);
    color: var(--primary-dark);
}

.tools-index-secondary,
.tools-index-bottom-content{
    padding: 1.1rem 0;
}

.tools-index-secondary__heading{
    max-width: 760px;
}

.tools-index-secondary__heading h2{
    margin-bottom: 0;
}

body.route-tools .tools-index-editorial .editorial-card,
body.route-tools .faq-section--accordion,
body.route-tools .cta-grid-section{
    box-shadow: 0 8px 24px rgba(26, 31, 54, .045);
}

body.route-tools .editorial-card{
    background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.82));
}

body.route-tools .lead-assist-card{
    margin-top: clamp(1.2rem, 3vw, 2.5rem);
    margin-bottom: clamp(1.2rem, 3vw, 2.4rem);
}

.tools-index-callout__card{
    align-items: center;
    background: linear-gradient(135deg, rgba(255, 245, 241, .96), rgba(255, 255, 255, .90));
    border-color: rgba(232, 96, 76, .14);
}


.equiv-result-placeholder-card {
    display: grid;
    gap: 1rem;
    padding: clamp(1.15rem, 2.2vw, 1.45rem);
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 28px;
    background:
        radial-gradient(circle at 90% 0%, rgba(232,96,76,.12), transparent 28%),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.94));
    box-shadow: 0 16px 42px rgba(26,31,54,.065);
}

.equiv-result-placeholder-card__icon {
    display: grid;
    place-items: center;
    width: 4.3rem;
    height: 4.3rem;
    border-radius: 24px;
    background: linear-gradient(135deg, rgba(232,96,76,.13), rgba(245,158,11,.14));
    font-size: 2rem;
}

.equiv-result-placeholder-card h2 {
    margin: 0;
    color: var(--heading);
    font-size: clamp(1.35rem, 2.4vw, 1.75rem);
    line-height: 1.15;
}

.equiv-result-placeholder-card p:not(.mini-label) {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.58;
}

.equiv-result-placeholder-steps {
    display: grid;
    gap: .65rem;
}

.equiv-result-placeholder-steps span {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .6rem;
    align-items: center;
    min-height: 3rem;
    padding: .68rem .78rem;
    border: 1px solid rgba(26,31,54,.07);
    border-radius: 16px;
    background: rgba(255,255,255,.86);
    color: var(--text-secondary);
    font-weight: 800;
}

.equiv-result-placeholder-steps i {
    display: grid;
    place-items: center;
    width: 1.8rem;
    height: 1.8rem;
    border-radius: 999px;
    background: rgba(232,96,76,.12);
    color: var(--primary-dark);
    font-style: normal;
    font-weight: 900;
}

.equiv-donut-legend em {
    overflow-wrap: anywhere;
}

@media (max-width: 1180px){
    .tools-index-grid{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 980px){
    .tools-index-hero__grid{
        grid-template-columns: 1fr;
    }

    .tools-index-hero__visual{
        min-height: 260px;
        order: -1;
    }

    .tools-index-hero__visual img{
        max-width: 420px;
    }

    .tools-index-grid,
    .tools-index-guide__steps{
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px){
    .tools-index-hero{
        padding-top: 2.35rem;
    }

    .tools-index-hero__visual{
        display: none;
    }

    .tools-index-hero__actions .button{
        width: 100%;
    }

    .tools-index-hero__chips{
        grid-template-columns: 1fr;
        gap: .55rem;
        margin: .1rem 0 .35rem;
    }

    .tools-index-chip{
        width: 100%;
        min-height: 2.55rem;
        padding: .62rem .85rem .62rem .62rem;
        border-radius: 18px;
        font-size: .9rem;
        text-align: left;
    }

    .tools-index-chip__icon{
        width: 1.85rem;
        height: 1.85rem;
        flex-basis: 1.85rem;
    }

    .tools-index-chip__icon svg{
        width: 1rem;
        height: 1rem;
    }

    .tools-index-primary__shell{
        border-radius: 24px;
        padding: 1rem;
    }

    .tools-index-primary__heading{
        text-align: left;
    }

    .tools-index-grid,
    .tools-index-guide__steps{
        grid-template-columns: 1fr;
    }

    .tools-index-group__intro,
    .tools-index-guide-step{
        grid-template-columns: 1fr;
    }

    .tools-index-card{
        padding: 1rem;
    }

    .tools-index-card__icon{
        width: 4.8rem;
        height: 4.8rem;
    }

    .tools-index-card__cta{
        width: 100%;
    }
}

/* Tool pages redesign: make the calculator/form the main focus */
.tool-page-hero--spotlight{
    position: relative;
    overflow: hidden;
    padding: clamp(2.6rem, 5vw, 4.6rem) 0 clamp(1.4rem, 3vw, 2.6rem);
}
.tool-page-hero--spotlight::before{
    content: '';
    position: absolute;
    inset: -8rem 0 auto;
    height: 34rem;
    background:
        radial-gradient(circle at 12% 24%, rgba(232, 96, 76, .12), transparent 33%),
        radial-gradient(circle at 84% 18%, rgba(245, 179, 95, .14), transparent 32%),
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,0));
    pointer-events: none;
    z-index: -1;
}
.tool-page-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.9fr);gap:clamp(1.1rem,4vw,3.8rem);align-items:center}
.tool-page-hero__copy{max-width:46rem}.tool-page-hero__copy .page-description{max-width:42rem;margin-bottom:0}
.tool-page-hero__badges{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:.3rem}
.tool-page-hero__badge{display:inline-flex;align-items:center;min-height:2.5rem;padding:.58rem .9rem;border-radius:999px;border:1px solid rgba(26,31,54,.08);background:rgba(255,255,255,.88);color:var(--text-secondary);font-size:.92rem;font-weight:760;line-height:1.2;box-shadow:0 10px 22px rgba(26,31,54,.045)}
.tool-page-hero__visual{display:grid;place-items:center}.tool-page-hero__visual-shell{position:relative;width:min(100%,34rem);padding:1rem;border-radius:2rem;border:1px solid rgba(232,96,76,.14);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(253,248,242,.94));box-shadow:0 26px 66px rgba(26,31,54,.10)}
.tool-page-hero__visual-shell::before{content:'';position:absolute;inset:auto 8% -8% 8%;height:2rem;border-radius:999px;background:rgba(242,232,225,.85);filter:blur(14px)}
.tool-page-hero__visual-meta{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem}.tool-page-hero__visual-lead,.tool-page-hero__visual-hint{display:inline-flex;align-items:center;min-height:1.95rem;padding:.32rem .72rem;border-radius:999px;font-size:.78rem;font-weight:850;line-height:1}.tool-page-hero__visual-lead{background:rgba(255,243,239,.96);color:var(--primary-dark);border:1px solid rgba(232,96,76,.22)}.tool-page-hero__visual-hint{background:rgba(246,248,252,.96);color:var(--muted);border:1px solid rgba(26,31,54,.08)}.tool-page-hero__visual img{position:relative;display:block;width:100%;height:auto;border-radius:1.45rem}
.content-section > .container > .tool-layout:first-of-type,.content-section > .container > .equivalent-income-workzone:first-of-type,.content-section > .container > .highest-paying-workzone:first-of-type{position:relative;padding:clamp(1rem,2vw,1.25rem);border:1px solid rgba(232,96,76,.13);border-radius:2rem;background:radial-gradient(circle at 100% 0%,rgba(232,96,76,.07),transparent 22%),linear-gradient(180deg,rgba(255,255,255,.99),rgba(252,247,241,.97));box-shadow:0 24px 56px rgba(26,31,54,.08)}
.content-section > .container > .tool-layout:first-of-type::before,.content-section > .container > .equivalent-income-workzone:first-of-type::before,.content-section > .container > .highest-paying-workzone:first-of-type::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}
.content-section > .container > .tool-layout:first-of-type{margin-top:.1rem}.tool-workzone-card,.highest-paying-form-card{position:relative}.highest-paying-form-card,.salary-benchmark-form-card{padding:1.4rem 1.45rem}.highest-paying-workzone .info-card:first-child,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child{border:1px solid rgba(160,114,74,.16);background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(251,247,241,.97));box-shadow:0 18px 42px rgba(58,39,24,.08)}
.highest-paying-workzone .info-card:first-child::after,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child::after{content:'Tool';position:absolute;top:1rem;right:1rem;display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.34rem .72rem;border-radius:999px;border:1px solid rgba(160,114,74,.22);background:rgba(255,250,244,.94);color:#7c5430;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 8px 18px rgba(58,39,24,.06)}
.highest-paying-workzone .tool-form,.tool-layout--salary-benchmark .tool-form{margin-top:.7rem;padding:1rem 1rem 1.05rem;border:2px dashed rgba(188,153,117,.34);border-radius:1.15rem;background:linear-gradient(180deg,rgba(253,248,242,.98),rgba(250,244,236,.96))}.highest-paying-workzone aside > .info-card:first-child,.tool-layout--salary-benchmark aside > .info-card:first-child,.equivalent-income-side-stack > .info-card:first-child{border:1px solid rgba(232,96,76,.10);background:linear-gradient(180deg,rgba(255,253,251,.99),rgba(255,246,240,.95));box-shadow:0 16px 36px rgba(26,31,54,.06)}
.answer-summary,.tool-decision-strip{margin-top:1rem}.partner-offers-section{padding-top:1rem}
@media (max-width:980px){.tool-page-hero__grid{grid-template-columns:1fr}.tool-page-hero__visual{order:-1}}
@media (max-width:760px){.tool-page-hero--spotlight{padding-top:2rem}.tool-page-hero__visual{display:none}.tool-page-hero__badges{flex-direction:column;align-items:stretch}.tool-page-hero__badge{justify-content:flex-start;white-space:normal}.content-section > .container > .tool-layout:first-of-type,.content-section > .container > .equivalent-income-workzone:first-of-type,.content-section > .container > .highest-paying-workzone:first-of-type{padding:.8rem;border-radius:1.4rem}.highest-paying-workzone .tool-form,.tool-layout--salary-benchmark .tool-form{padding:.9rem .88rem .95rem}}


/* Refinement pass: emphasize the calculator itself and reduce visual clutter above the form */
.tool-page-hero__visual-shell{padding:.85rem 1rem 1rem}
.tool-page-hero__visual-meta{margin-bottom:.55rem}
.tool-page-hero__visual-hint{max-width:12.5rem;text-align:right;line-height:1.2}
.tool-page-hero__visual img{border-radius:1.3rem;overflow:hidden}
.tool-page-hero__badge{background:rgba(255,255,255,.94)}

.tool-layout,.equivalent-income-workzone,.highest-paying-workzone{align-items:start}
.tool-form-wrap,.tool-sidebar,.equivalent-income-side-stack,.highest-paying-main-column,.highest-paying-sidebar{min-width:0}
.tool-sidecard,.tool-guides-card,.equivalent-income-side-stack > *, .highest-paying-workzone aside > *{min-width:0;overflow:hidden}

.tool-workzone-card,.highest-paying-form-card,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child{display:flex;flex-direction:column;padding:0;border-radius:1.6rem;overflow:hidden}
.tool-workzone-card::after,.highest-paying-workzone .info-card:first-child::after,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child::after{content:'Calculator'}
.tool-workzone-header{position:relative;order:1;padding:1.15rem 1.2rem 1rem;border-bottom:1px solid rgba(125,91,60,.12);background:linear-gradient(180deg,rgba(250,244,237,.98),rgba(255,255,255,.99))}
.tool-workzone-header::before{content:'';position:absolute;top:1.05rem;right:4.25rem;width:2rem;height:2rem;border-radius:14px;background:linear-gradient(180deg,rgba(255,241,234,.98),rgba(255,248,243,.96));border:1px solid rgba(232,96,76,.18);box-shadow:0 8px 18px rgba(232,96,76,.08)}
.tool-workzone-header::after{content:'';position:absolute;top:1.58rem;right:4.83rem;width:.82rem;height:.82rem;border-radius:4px;background:linear-gradient(180deg,#F26A45,#E05F45);box-shadow:-.75rem 0 0 rgba(247,178,73,.92),0 -.75rem 0 rgba(132,176,141,.92),-.75rem -.75rem 0 rgba(184,90,74,.88)}
.tool-workzone-header h2{margin:0 0 .35rem;max-width:34rem}
.tool-workzone-header .section-intro{margin:0;max-width:42rem}
.tool-form{order:2;counter-reset:calc-section;margin:0;padding:1.05rem 1.05rem 1.1rem;border:0;border-top:1px solid rgba(125,91,60,.08);border-radius:0;background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(251,247,241,.96))}
.tool-workzone-card .tool-form,.highest-paying-workzone .tool-form,.tool-layout--salary-benchmark .tool-form{border:0;border-top:1px solid rgba(125,91,60,.08);border-radius:0;background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(251,247,241,.96));padding:1.05rem 1.05rem 1.1rem;margin:0}
.tool-form .form-grid.two-col-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem;align-items:start}
.tool-workzone-card .form-field,.highest-paying-form-card .form-field,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field{min-width:0;padding:.82rem .88rem .92rem;border-radius:16px;border:1px solid rgba(160,114,74,.15);background:linear-gradient(180deg,rgba(255,255,255,.995),rgba(255,252,249,.985));box-shadow:0 1px 0 rgba(255,255,255,.75)}
.tool-workzone-card .form-field label,.highest-paying-form-card .form-field label,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field label{margin-bottom:.42rem;font-weight:760;font-size:.94rem;line-height:1.35;color:var(--text)}
.tool-workzone-card .form-field input,.tool-workzone-card .form-field select,.tool-workzone-card .form-field textarea,.highest-paying-form-card .form-field input,.highest-paying-form-card .form-field select,.highest-paying-form-card .form-field textarea,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field input,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field select,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field textarea{min-height:2.9rem;border-radius:12px;border:1.5px solid rgba(125,91,60,.22);background:#fff}
.tool-workzone-card .form-field textarea,.highest-paying-form-card .form-field textarea,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field textarea{min-height:7.2rem}
.tool-workzone-card .form-field.has-error,.highest-paying-form-card .form-field.has-error,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error{border-color:rgba(209,67,67,.42);background:linear-gradient(180deg,rgba(255,246,246,.995),rgba(255,238,238,.96));box-shadow:0 0 0 3px rgba(209,67,67,.08),0 1px 0 rgba(255,255,255,.75)}
.tool-workzone-card .form-field.has-error label,.highest-paying-form-card .form-field.has-error label,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error label{color:#9f2424}
.tool-workzone-card .form-field.has-error input,.tool-workzone-card .form-field.has-error select,.tool-workzone-card .form-field.has-error textarea,.highest-paying-form-card .form-field.has-error input,.highest-paying-form-card .form-field.has-error select,.highest-paying-form-card .form-field.has-error textarea,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error input,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error select,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error textarea{border-color:#d14343;background:#fffafa;box-shadow:0 0 0 4px rgba(209,67,67,.10)}
.tool-workzone-card .form-field.has-error input:hover,.tool-workzone-card .form-field.has-error select:hover,.tool-workzone-card .form-field.has-error textarea:hover,.tool-workzone-card .form-field.has-error input:focus,.tool-workzone-card .form-field.has-error select:focus,.tool-workzone-card .form-field.has-error textarea:focus,.highest-paying-form-card .form-field.has-error input:hover,.highest-paying-form-card .form-field.has-error select:hover,.highest-paying-form-card .form-field.has-error textarea:hover,.highest-paying-form-card .form-field.has-error input:focus,.highest-paying-form-card .form-field.has-error select:focus,.highest-paying-form-card .form-field.has-error textarea:focus,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error input:hover,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error select:hover,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error textarea:hover,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error input:focus,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error select:focus,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .form-field.has-error textarea:focus{border-color:#c73535;background:#fff;box-shadow:0 0 0 4px rgba(209,67,67,.14);outline:none}
.tool-workzone-card .field-hint,.tool-workzone-card .small-muted,.highest-paying-form-card .field-hint,.highest-paying-form-card .small-muted,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .field-hint,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child .small-muted{margin-top:.4rem}
.tool-form-group-heading{position:relative;grid-column:1/-1;counter-increment:calc-section;display:block;margin-top:.18rem;padding:.9rem 1rem .92rem 3.55rem;border:1px solid rgba(205,147,97,.18);border-radius:16px;background:linear-gradient(180deg,rgba(255,245,237,.98),rgba(255,251,247,.96))}
.tool-form-group-heading:first-child{margin-top:0}
.tool-form-group-heading::before{content:counter(calc-section);position:absolute;left:1rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:999px;background:linear-gradient(180deg,rgba(242,106,69,.96),rgba(224,95,69,.98));color:#fff;font-size:.86rem;font-weight:800;box-shadow:0 10px 18px rgba(232,96,76,.18)}
.tool-form-group-title{margin:0;font-size:1rem;font-weight:800;color:var(--text)}
.tool-form-group-copy{margin:.25rem 0 0;color:var(--muted);font-size:.92rem;line-height:1.5}
.tool-explainer{order:4;margin:.25rem 1.05rem 0;padding:.95rem 1rem;border-radius:16px;border:1px solid rgba(205,147,97,.14);background:linear-gradient(180deg,rgba(255,249,244,.98),rgba(255,255,255,.96))}
.tool-trust-stack{order:5;display:grid;gap:.75rem;margin:.85rem 1.05rem 1.05rem}
.tool-trust-stack > *{min-width:0;margin:0;box-shadow:none}
.form-alert{order:3;margin:.95rem 1.05rem 0}
.tool-workzone-card .button-form-submit,.highest-paying-workzone .button-form-submit,.tool-layout--salary-benchmark .button-form-submit{width:100%;min-width:0;box-shadow:0 12px 28px rgba(170,105,60,.18)}
.tool-workzone-card .button-form-submit{margin-top:.35rem}

@media (min-width: 981px){
  .tool-layout{grid-template-columns:minmax(0,1.12fr) minmax(250px,.58fr);gap:1rem}
}

@media (max-width:980px){
  .tool-form .form-grid.two-col-grid{grid-template-columns:1fr}
}

@media (max-width:760px){
  .tool-workzone-card,.highest-paying-form-card,.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child{border-radius:1.35rem}
  .tool-workzone-header{padding:1rem 1rem .9rem}
  .tool-workzone-header::before{top:.94rem;right:3.85rem}
  .tool-workzone-header::after{top:1.47rem;right:4.43rem}
  .tool-form,.tool-workzone-card .tool-form,.highest-paying-workzone .tool-form,.tool-layout--salary-benchmark .tool-form{padding:.9rem .88rem .95rem}
  .tool-explainer,.tool-trust-stack{margin-left:.88rem;margin-right:.88rem}
  .tool-form-group-heading{padding:.82rem .92rem .86rem 3.3rem}
}


.monthly-results-dashboard {
    display: grid;
    gap: 1.35rem;
}

.monthly-results-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(320px, 0.9fr);
    gap: 1.25rem;
    padding: 1.5rem;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(250, 239, 234, 0.92));
    border: 1px solid rgba(229, 215, 208, 0.8);
    border-radius: 28px;
    box-shadow: 0 24px 50px rgba(40, 48, 68, 0.08);
}

.monthly-results-eyebrow {
    margin: 0 0 .6rem;
    font-size: .88rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #e56a4c;
    font-weight: 800;
}

.monthly-results-hero h2 {
    margin: 0;
    color: #1e274c;
    font-size: clamp(2rem, 4vw, 3.35rem);
    line-height: .98;
}

.monthly-results-subtitle {
    margin: .85rem 0 0;
    font-size: 1rem;
    color: #5f6c83;
}

.monthly-results-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin-top: 1rem;
}

.monthly-results-hero__aside {
    display: grid;
    align-content: space-between;
    gap: 1rem;
}

.monthly-results-status-card {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .85rem;
    align-items: start;
    padding: 1.1rem 1.15rem;
    background: rgba(255, 255, 255, 0.92);
    border-radius: 22px;
    border: 1px solid rgba(223, 228, 237, 0.95);
    box-shadow: 0 14px 30px rgba(35, 43, 64, 0.06);
}

.monthly-results-status-card__icon {
    width: 2.8rem;
    height: 2.8rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    font-size: 1.15rem;
    background: #eff7ef;
    color: #2f9a56;
}

.monthly-results-status-card--warning .monthly-results-status-card__icon {
    background: #fff3e8;
    color: #d9822b;
}

.monthly-results-status-card--negative .monthly-results-status-card__icon {
    background: #fdeceb;
    color: #d05f4a;
}

.monthly-results-status-card strong {
    display: block;
    margin-bottom: .22rem;
    color: #1f284e;
    font-size: 1.65rem;
}

.monthly-results-status-card p {
    margin: 0;
    color: #5b6880;
    line-height: 1.55;
}

.monthly-results-illustration {
    position: relative;
    min-height: 180px;
    border-radius: 26px;
    background: linear-gradient(135deg, rgba(255, 244, 238, 0.98), rgba(252, 246, 243, 0.92));
    border: 1px solid rgba(237, 223, 216, 0.85);
    overflow: hidden;
}

.monthly-results-illustration__screen {
    position: absolute;
    inset: 24px 28px 30px;
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(248,239,234,0.88));
    box-shadow: inset 0 0 0 1px rgba(234, 223, 218, 0.8);
}

.monthly-results-illustration__screen::before,
.monthly-results-illustration__screen::after {
    content: '';
    position: absolute;
    left: 22px;
    height: 10px;
    border-radius: 999px;
    background: rgba(228, 108, 77, 0.22);
}

.monthly-results-illustration__screen::before { top: 24px; width: 84px; }
.monthly-results-illustration__screen::after { top: 46px; width: 138px; }

.monthly-results-illustration__card {
    position: absolute;
    bottom: 26px;
    width: 68px;
    border-radius: 18px;
    background: rgba(255,255,255,0.96);
    box-shadow: 0 16px 30px rgba(44, 52, 70, 0.08);
    border: 1px solid rgba(236, 225, 220, 0.9);
}

.monthly-results-illustration__card::before {
    content: '';
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 16px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(242, 108, 72, 0.15), rgba(242, 108, 72, 0.42));
}

.monthly-results-illustration__card--left { left: 22px; height: 110px; }
.monthly-results-illustration__card--middle { left: 104px; height: 96px; }
.monthly-results-illustration__card--right { left: 186px; height: 124px; }

.monthly-results-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1rem;
}

.monthly-kpi-card {
    padding: 1.15rem 1.15rem 1rem;
    background: #fff;
    border: 1px solid rgba(229, 232, 238, 0.95);
    border-radius: 22px;
    box-shadow: 0 14px 28px rgba(39, 48, 64, 0.05);
}

.monthly-kpi-card--emphasis {
    border-color: rgba(137, 196, 149, 0.95);
    box-shadow: 0 18px 34px rgba(65, 111, 74, 0.08);
}

.monthly-kpi-card h3 {
    margin: .25rem 0 .2rem;
    color: #1f284e;
    font-size: 2rem;
    line-height: 1.08;
}

.monthly-kpi-card--green h3,
.monthly-kpi-card--mint h3 {
    color: #169356;
}

.monthly-kpi-card__icon {
    width: 3rem;
    height: 3rem;
    border-radius: 16px;
    background: rgba(240, 247, 242, 1);
    margin-bottom: .8rem;
}

.monthly-kpi-card--peach .monthly-kpi-card__icon,
.monthly-kpi-card--sand .monthly-kpi-card__icon,
.monthly-kpi-card--warning .monthly-kpi-card__icon {
    background: rgba(255, 243, 235, 1);
}

.monthly-results-main {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
    gap: 1rem;
}

.monthly-results-card,
.monthly-results-meaning,
.monthly-next-card {
    background: #fff;
    border: 1px solid rgba(229, 232, 238, 0.95);
    border-radius: 24px;
    box-shadow: 0 16px 34px rgba(39, 48, 64, 0.05);
}

.monthly-results-card {
    padding: 1.25rem;
}

.monthly-results-card__header {
    display: flex;
    justify-content: space-between;
    gap: .85rem;
    align-items: start;
    margin-bottom: 1rem;
}

.monthly-results-card__header h3,
.monthly-results-meaning h3,
.monthly-results-next h3 {
    margin: 0;
    color: #1f284e;
    font-size: 1.8rem;
}

.monthly-results-card__header p {
    margin: .2rem 0 0;
    color: #68758c;
}

.monthly-results-chart-layout {
    display: grid;
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
}

.monthly-results-donut {
    width: 220px;
    height: 220px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    margin: 0 auto;
    background: conic-gradient(#f26545 0 30%, #ff9b6a 30% 46%, #f5c45c 46% 57%, #7bc17d 57% 68%, #8e70dd 68% 76%, #556bd6 76% 83%, #42b8c6 83% 90%, #b8c0cc 90% 100%);
}

.monthly-results-donut__center {
    width: 128px;
    height: 128px;
    border-radius: 50%;
    background: #fff;
    display: grid;
    place-items: center;
    text-align: center;
    box-shadow: inset 0 0 0 1px rgba(232, 236, 242, 0.9);
    padding: .75rem;
}

.monthly-results-donut__center strong {
    display: block;
    color: #1f284e;
    font-size: 1.7rem;
    line-height: 1.06;
}

.monthly-results-donut__center span {
    color: #69758c;
    font-size: .92rem;
}

.monthly-results-legend {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: .65rem;
}

.monthly-results-legend li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: .65rem;
    align-items: center;
    color: #1f284e;
}

.monthly-results-legend__dot {
    width: .82rem;
    height: .82rem;
    border-radius: 999px;
    display: inline-block;
}

.monthly-results-legend__label {
    min-width: 0;
}

.monthly-results-note {
    margin-top: 1rem;
    padding: .95rem 1rem;
    background: #fff7f2;
    border: 1px solid rgba(242, 172, 136, 0.35);
    border-radius: 18px;
    color: #465168;
}

.monthly-results-note p { margin: 0; }

.monthly-results-table-wrap,
.monthly-results-table {
    width: 100%;
}

.monthly-results-table tbody tr td:first-child,
.monthly-results-table thead th:first-child,
.monthly-results-table tfoot th:first-child {
    width: 65%;
}

.monthly-results-table tfoot th {
    color: #d55d41;
}

.monthly-results-meaning {
    padding: 1.2rem 1.25rem;
    background: linear-gradient(180deg, rgba(247, 251, 248, 0.98), rgba(252, 255, 253, 0.98));
    border-color: rgba(214, 233, 220, 0.95);
}

.monthly-results-meaning__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.monthly-results-meaning__item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .65rem;
    align-items: start;
}

.monthly-results-meaning__icon {
    width: 1.65rem;
    height: 1.65rem;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #ecf7ef;
    color: #169356;
    font-weight: 800;
    margin-top: .15rem;
}

.monthly-results-meaning__item p {
    margin: 0;
    color: #41506a;
    line-height: 1.6;
}

.monthly-results-next__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.monthly-next-card {
    padding: 1.15rem;
    display: grid;
    gap: .75rem;
}

.monthly-next-card h4 {
    margin: 0;
    color: #1f284e;
    font-size: 1.35rem;
}

.monthly-next-card p {
    margin: 0;
    color: #5f6c83;
    line-height: 1.55;
}

.monthly-next-card .button {
    justify-self: start;
}

.monthly-results-footnote {
    margin: .2rem 0 0;
    text-align: center;
    color: #768399;
    font-size: .95rem;
}

.monthly-results-followup-layout {
    align-items: start;
}

.lead-assist-card--after-result .lead-assist-actions {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
}

.lead-assist-card--after-result .lead-submit-wrap {
    justify-items: start;
}

.lead-assist-card--after-result .button-form-submit {
    width: 100%;
}

@media (max-width: 1180px) {
    .monthly-results-kpis,
    .monthly-results-next__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .monthly-results-meaning__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 980px) {
    .monthly-results-hero,
    .monthly-results-main,
    .monthly-results-chart-layout,
    .monthly-results-kpis,
    .monthly-results-next__grid {
        grid-template-columns: 1fr;
    }

    .monthly-results-illustration {
        min-height: 150px;
    }

    .monthly-results-donut {
        width: 200px;
        height: 200px;
    }
}

@media (max-width: 640px) {
    .monthly-results-hero,
    .monthly-results-card,
    .monthly-results-meaning,
    .monthly-next-card {
        padding: 1rem;
        border-radius: 20px;
    }

    .monthly-results-status-card strong {
        font-size: 1.35rem;
    }

    .monthly-results-hero h2 {
        font-size: 2rem;
    }

    .monthly-kpi-card h3,
    .monthly-results-card__header h3,
    .monthly-results-meaning h3,
    .monthly-results-next h3 {
        font-size: 1.45rem;
    }

    .monthly-results-donut {
        width: 180px;
        height: 180px;
    }

    .monthly-results-donut__center {
        width: 112px;
        height: 112px;
    }

    .monthly-results-donut__center strong {
        font-size: 1.38rem;
    }
}


/* Monthly affordability results refinement */
.monthly-results-donut { justify-self: center; }
.monthly-results-legend { width: min(100%, 24rem); }
.monthly-results-residency-card { padding-top: 1.15rem; }
.monthly-results-residency-table th:nth-child(2),
.monthly-results-residency-table td:nth-child(2),
.monthly-results-residency-table th:nth-child(3),
.monthly-results-residency-table td:nth-child(3) { white-space: nowrap; }
.calculator-results-section + .content-section .container > .tool-decision-strip-block,
.calculator-results-section + .content-section .container > .answer-summary { width: 100%; max-width: 100%; }
.monthly-results-followup-layout > .stack-lg,
.monthly-results-followup-layout > .tool-sidebar { min-width: 0; }
.monthly-results-followup-layout .subsection-block,
.monthly-results-followup-layout .info-card,
.monthly-results-followup-layout .tool-result-guidance-block,
.monthly-results-followup-layout .why-result { width: 100%; max-width: 100%; }

@media (max-width: 980px) {
  .monthly-results-chart-layout { justify-items: center; }
  .monthly-results-legend { justify-self: center; }
  .monthly-results-followup-layout { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .monthly-results-legend { width: 100%; }
  .monthly-results-residency-table th:nth-child(2),
  .monthly-results-residency-table td:nth-child(2),
  .monthly-results-residency-table th:nth-child(3),
  .monthly-results-residency-table td:nth-child(3) { white-space: normal; }
}


/* Monthly results mobile overflow hardening */
.calculator-results-section,
.calculator-results-section .container,
.calculator-results-section .container > *,
.tool-results-frame,
.monthly-results-dashboard,
.monthly-results-dashboard > *,
.monthly-results-card,
.monthly-results-meaning,
.monthly-next-card,
.monthly-results-followup-layout,
.monthly-results-followup-layout > *,
.monthly-results-followup-layout .subsection-block,
.monthly-results-followup-layout .info-card,
.monthly-results-followup-layout .tool-result-guidance-block,
.monthly-results-followup-layout .why-result,
.monthly-results-table-wrap,
.monthly-results-table,
.table-wrap {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

.tool-results-frame,
.monthly-results-card,
.monthly-results-meaning,
.monthly-next-card {
  overflow: hidden;
}

.monthly-results-chart-layout,
.monthly-results-kpis,
.monthly-results-main,
.monthly-results-next__grid,
.monthly-results-meaning__grid,
.monthly-results-hero,
.monthly-results-meta,
.monthly-results-legend,
.monthly-results-legend li {
  min-width: 0;
}

.monthly-results-legend__label,
.monthly-results-status-card p,
.monthly-results-status-card strong,
.monthly-results-card__header h3,
.monthly-results-card__header p,
.monthly-kpi-card h3,
.monthly-kpi-card .small-muted,
.monthly-kpi-card .mini-label,
.monthly-next-card h4,
.monthly-next-card p,
.monthly-results-meaning__item p,
.pill,
.pill-highlight {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.monthly-results-residency-table,
.monthly-results-table {
  table-layout: fixed;
}

.monthly-results-residency-table th,
.monthly-results-residency-table td,
.monthly-results-table th,
.monthly-results-table td {
  overflow-wrap: anywhere;
  word-break: break-word;
}

@media (max-width: 760px) {
  .calculator-results-section .container.stack-lg {
    gap: 1rem;
  }

  .tool-results-frame {
    padding: .9rem;
    border-radius: 1rem;
  }

  .monthly-results-card,
  .monthly-results-meaning,
  .monthly-next-card,
  .lead-assist-card--after-result,
  .tool-result-guidance-block,
  .why-result,
  .tool-decision-strip-block,
  .faq-section,
  .tool-guides-card {
    width: 100%;
    max-width: 100%;
  }

  .monthly-results-chart-layout {
    width: 100%;
    justify-items: center;
  }

  .monthly-results-donut,
  .monthly-results-legend {
    justify-self: center;
  }

  .monthly-results-table-wrap,
  .table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 640px) {
  .calculator-results-section,
  .calculator-results-section .container,
  .calculator-results-section .container > * {
    width: 100%;
    max-width: 100%;
  }

  .monthly-results-hero,
  .monthly-results-card,
  .monthly-results-meaning,
  .monthly-next-card,
  .monthly-kpi-card {
    border-radius: 18px;
  }

  .monthly-results-card,
  .monthly-results-meaning,
  .monthly-next-card,
  .monthly-kpi-card,
  .lead-assist-card--after-result,
  .tool-result-guidance-block,
  .why-result,
  .tool-decision-strip-block,
  .faq-section,
  .tool-guides-card {
    margin-left: 0;
    margin-right: 0;
  }
}


/* Mobile-friendly residency costs presentation */
.monthly-results-residency-mobile-list {
    display: none;
    gap: .85rem;
}

.monthly-results-residency-mobile-card {
    padding: 1rem;
    border: 1px solid rgba(229, 232, 238, 0.95);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(249,250,252,0.98));
    box-shadow: 0 10px 22px rgba(39, 48, 64, 0.04);
}

.monthly-results-residency-mobile-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .85rem;
    margin-bottom: .85rem;
}

.monthly-results-residency-mobile-card__top h4 {
    margin: 0;
    font-size: 1.1rem;
    line-height: 1.45;
    color: #1f284e;
}

.monthly-results-residency-mobile-card__top strong {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6.5rem;
    padding: .48rem .7rem;
    border-radius: 999px;
    background: #fff4ee;
    color: #d55d41;
    font-size: 1rem;
    line-height: 1.2;
    text-align: center;
}

.monthly-results-residency-mobile-meta {
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}

.monthly-results-residency-mobile-meta div {
    padding: .8rem .85rem;
    border-radius: 14px;
    background: #f7f9fc;
    border: 1px solid rgba(228, 233, 241, 0.95);
}

.monthly-results-residency-mobile-meta dt {
    margin: 0 0 .3rem;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #75829a;
}

.monthly-results-residency-mobile-meta dd {
    margin: 0;
    color: #1f284e;
    font-weight: 700;
    line-height: 1.45;
}

@media (max-width: 760px) {
  .monthly-results-residency-table-wrap {
    display: none;
  }

  .monthly-results-residency-mobile-list {
    display: grid;
  }
}

@media (max-width: 480px) {
  .monthly-results-residency-mobile-card__top {
    flex-direction: column;
    align-items: stretch;
  }

  .monthly-results-residency-mobile-card__top strong {
    align-self: flex-start;
  }

  .monthly-results-residency-mobile-meta {
    grid-template-columns: 1fr;
  }
}


/* Tool header badge refinement: move calculator badge to top-left and keep it inside the circle */
.tool-workzone-header {
  padding-left: 4.55rem;
}

.tool-workzone-header::before {
  top: 1rem;
  left: 1.15rem;
  right: auto;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(255,241,234,.98), rgba(255,248,243,.98));
}

.tool-workzone-header::after {
  top: 1.53rem;
  left: 1.73rem;
  right: auto;
  width: .86rem;
  height: .86rem;
  border-radius: 5px;
  box-shadow:
    .78rem 0 0 rgba(242,106,69,.92),
    0 -.78rem 0 rgba(184,90,74,.88),
    .78rem -.78rem 0 rgba(132,176,141,.92);
}

@media (max-width: 760px) {
  .tool-workzone-header {
    padding-left: 4.2rem;
  }

  .tool-workzone-header::before {
    top: .9rem;
    left: 1rem;
    width: 2.35rem;
    height: 2.35rem;
  }

  .tool-workzone-header::after {
    top: 1.39rem;
    left: 1.54rem;
    width: .82rem;
    height: .82rem;
    box-shadow:
      .74rem 0 0 rgba(242,106,69,.92),
      0 -.74rem 0 rgba(184,90,74,.88),
      .74rem -.74rem 0 rgba(132,176,141,.92);
  }
}


/* Nudge calculator icon slightly lower inside the circular badge */
.tool-workzone-header::after {
  top: 1.61rem;
}

@media (max-width: 760px) {
  .tool-workzone-header::after {
    top: 1.47rem;
  }
}


/* Remove circular background around the small app/calculator icon */
.tool-workzone-header::before {
  display: none !important;
  content: none !important;
}

.tool-workzone-header::after {
  top: 1.38rem !important;
  left: 1.28rem !important;
  right: auto !important;
}

@media (max-width: 760px) {
  .tool-workzone-header::after {
    top: 1.24rem !important;
    left: 1.16rem !important;
  }
}

/* Relocation affordability results dashboard */
.relocation-affordability-results-section {
    padding-top: 1rem;
}

.relocation-affordability-results-frame {
    padding: clamp(1rem, 2vw, 1.35rem);
    border-color: rgba(232, 96, 76, .14);
    background:
        radial-gradient(circle at 6% 4%, rgba(232,96,76,.08), transparent 28%),
        linear-gradient(180deg, rgba(255,255,255,.99), rgba(250,247,243,.985));
    box-shadow: 0 28px 70px rgba(26,31,54,.08);
}

.relocation-affordability-dashboard,
.relocation-affordability-dashboard *,
.relocation-affordability-support,
.relocation-affordability-support * {
    box-sizing: border-box;
}

.relocation-affordability-dashboard {
    display: grid;
    gap: 1rem;
    min-width: 0;
}

.ra-dashboard-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(240px, .55fr);
    gap: 1rem;
    align-items: stretch;
}

.ra-dashboard-verdict,
.ra-score-card,
.ra-kpi-card,
.ra-panel {
    min-width: 0;
    border: 1px solid rgba(226,231,239,.92);
    background: rgba(255,255,255,.96);
    border-radius: 24px;
    box-shadow: 0 16px 34px rgba(31,40,78,.055);
}

.ra-dashboard-verdict {
    padding: clamp(1rem, 2vw, 1.4rem);
    background: linear-gradient(135deg, rgba(242,251,245,.96), rgba(255,255,255,.98));
    border-color: rgba(167,218,181,.8);
}

.ra-dashboard-hero--warning .ra-dashboard-verdict {
    background: linear-gradient(135deg, rgba(255,248,236,.98), rgba(255,255,255,.98));
    border-color: rgba(246,206,140,.95);
}

.ra-dashboard-hero--negative .ra-dashboard-verdict {
    background: linear-gradient(135deg, rgba(255,241,239,.98), rgba(255,255,255,.98));
    border-color: rgba(240,188,177,.95);
}

.ra-dashboard-eyebrow {
    margin: 0 0 .75rem;
    font-size: .78rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #cf6045;
    font-weight: 850;
}

.ra-dashboard-verdict__body {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.ra-dashboard-verdict__icon {
    display: inline-grid;
    place-items: center;
    width: 4rem;
    height: 4rem;
    border-radius: 999px;
    background: linear-gradient(180deg, #62bd72, #2f9d55);
    color: #fff;
    font-weight: 900;
    font-size: 2rem;
    box-shadow: 0 18px 34px rgba(46,157,85,.2);
}

.ra-dashboard-hero--warning .ra-dashboard-verdict__icon {
    background: linear-gradient(180deg, #f7bd5b, #df8c2d);
    box-shadow: 0 18px 34px rgba(223,140,45,.18);
}

.ra-dashboard-hero--negative .ra-dashboard-verdict__icon {
    background: linear-gradient(180deg, #ef7863, #d95842);
    box-shadow: 0 18px 34px rgba(217,88,66,.18);
}

.ra-dashboard-verdict h2 {
    margin: 0;
    color: var(--text);
    font-size: clamp(1.75rem, 3.2vw, 2.75rem);
    line-height: 1.02;
}

.ra-dashboard-verdict p {
    margin: .7rem 0 0;
    color: var(--text-secondary);
    line-height: 1.62;
}

.ra-dashboard-place {
    display: inline-flex;
    width: fit-content;
    padding: .48rem .75rem;
    border-radius: 999px;
    background: rgba(255,255,255,.78);
    border: 1px solid rgba(167,218,181,.6);
    font-weight: 800;
    color: #3b4b69 !important;
}

.ra-score-card {
    display: grid;
    align-content: center;
    justify-items: center;
    gap: .55rem;
    padding: 1.1rem;
    text-align: center;
}

.ra-score-ring {
    width: 9.4rem;
    height: 9.4rem;
    border-radius: 999px;
    display: grid;
    place-items: center;
}

.ra-score-ring__center {
    display: grid;
    place-items: center;
    align-content: center;
    width: 6.5rem;
    height: 6.5rem;
    border-radius: 999px;
    background: #fff;
    box-shadow: inset 0 0 0 1px rgba(226,231,239,.95);
}

.ra-score-ring__center strong {
    color: #2ca35c;
    font-size: 2.35rem;
    line-height: 1;
}

.ra-score-ring__center span {
    color: var(--muted);
    font-weight: 800;
}

.ra-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .9rem;
}

.ra-kpi-card {
    display: grid;
    gap: .45rem;
    padding: 1rem;
}

.ra-kpi-card h3 {
    margin: 0;
    color: var(--text);
    font-size: clamp(1.35rem, 2.4vw, 2rem);
    line-height: 1.05;
    overflow-wrap: anywhere;
}

.ra-kpi-card p {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.45;
}

.ra-kpi-card--positive h3 {
    color: #20945a;
}

.ra-kpi-card--warning h3 {
    color: #cf6045;
}

.ra-kpi-icon {
    width: 2.65rem;
    height: 2.65rem;
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(240,246,255,.96), rgba(255,255,255,.96));
    border: 1px solid rgba(220,228,240,.9);
    position: relative;
}

.ra-kpi-icon::after {
    content: '';
    position: absolute;
    inset: .72rem;
    border-radius: 8px;
    background: #6f8fe8;
}

.ra-kpi-icon--green::after { background: #55aa74; }
.ra-kpi-icon--orange::after { background: #f26445; }
.ra-kpi-icon--shield::after { background: #f0ae46; }

.ra-dashboard-main-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .82fr) minmax(300px, .95fr);
    gap: .9rem;
    align-items: stretch;
}

.ra-panel {
    padding: 1.1rem;
}

.ra-panel-heading {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .9rem;
}

.ra-panel-heading h3 {
    margin: 0;
    color: var(--text);
    font-size: 1.45rem;
    line-height: 1.14;
}

.ra-panel-heading span {
    color: var(--muted);
    font-weight: 800;
    font-size: .85rem;
}

.ra-chart-layout {
    display: grid;
    grid-template-columns: minmax(170px, 220px) minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
}

.ra-donut {
    justify-self: center;
    display: grid;
    place-items: center;
    width: min(14rem, 100%);
    aspect-ratio: 1;
    border-radius: 999px;
}

.ra-donut__center {
    display: grid;
    place-items: center;
    align-content: center;
    width: 8.1rem;
    height: 8.1rem;
    border-radius: 999px;
    background: #fff;
    box-shadow: inset 0 0 0 1px rgba(226,231,239,.95);
    text-align: center;
    padding: .75rem;
}

.ra-donut__center strong {
    display: block;
    color: var(--text);
    font-size: 1.45rem;
    line-height: 1.05;
    overflow-wrap: anywhere;
}

.ra-donut__center span {
    color: var(--muted);
    font-size: .83rem;
}

.ra-chart-legend {
    list-style: none;
    display: grid;
    gap: .52rem;
    padding: 0;
    margin: 0;
    min-width: 0;
}

.ra-chart-legend li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: .5rem;
    align-items: center;
    color: var(--text-secondary);
    line-height: 1.25;
}

.ra-chart-legend strong {
    color: var(--text);
    font-weight: 850;
    overflow-wrap: anywhere;
}

.ra-chart-dot {
    display: inline-block;
    width: .72rem;
    height: .72rem;
    border-radius: 999px;
}

.ra-budget-list {
    display: grid;
    gap: .5rem;
}

.ra-budget-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .75rem;
    align-items: center;
    padding: .7rem .8rem;
    border-radius: 14px;
    background: rgba(247,249,252,.92);
    color: var(--text-secondary);
}

.ra-budget-row strong {
    color: var(--text);
    overflow-wrap: anywhere;
}

.ra-budget-row--positive {
    background: rgba(235,248,239,.96);
}
.ra-budget-row--positive strong { color: #20945a; }
.ra-budget-row--negative { background: rgba(255,244,239,.96); }
.ra-budget-row--negative strong { color: #cf6045; }

.ra-check-list,
.ra-risk-box ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: .65rem;
}

.ra-check-list li,
.ra-risk-box li {
    position: relative;
    padding-left: 1.75rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

.ra-check-list li::before,
.ra-risk-box li::before {
    content: '✓';
    position: absolute;
    left: 0;
    top: .05rem;
    display: grid;
    place-items: center;
    width: 1.05rem;
    height: 1.05rem;
    border-radius: 999px;
    background: #e9f7ee;
    color: #20945a;
    font-size: .72rem;
    font-weight: 900;
}

.ra-risk-box {
    margin-top: 1rem;
    padding: .95rem;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(255,248,238,.98), rgba(255,252,248,.98));
    border: 1px solid rgba(242,201,143,.8);
}

.ra-risk-box h4 {
    margin: 0 0 .75rem;
    color: var(--text);
    font-size: 1.05rem;
}

.ra-risk-box li::before {
    content: '!';
    background: #fff0df;
    color: #d9822b;
}

.ra-risk-box span {
    display: block;
    margin-top: .15rem;
}

.ra-docs-panel,
.ra-next-panel {
    width: 100%;
}

.ra-doc-costs-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .8rem;
}

.ra-doc-cost-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .8rem;
    align-items: start;
    padding: .95rem;
    border-radius: 18px;
    background: rgba(247,249,252,.94);
    border: 1px solid rgba(226,231,239,.92);
}

.ra-doc-cost-card__icon {
    display: inline-grid;
    width: 2.45rem;
    height: 2.45rem;
    border-radius: 14px;
    background: #fff4ed;
    border: 1px solid rgba(242,151,114,.55);
}

.ra-doc-cost-card p,
.ra-doc-cost-card small {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.4;
}

.ra-doc-cost-card strong {
    display: block;
    margin: .28rem 0 .1rem;
    color: var(--text);
    font-size: 1.22rem;
}

.ra-next-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .8rem;
}

.ra-next-step {
    display: grid;
    gap: .35rem;
    min-width: 0;
    padding: .95rem;
    border-radius: 18px;
    background: rgba(248,250,252,.96);
    border: 1px solid rgba(226,231,239,.92);
    color: inherit;
    text-decoration: none;
}

.ra-next-step span {
    display: inline-grid;
    place-items: center;
    width: 1.85rem;
    height: 1.85rem;
    border-radius: 999px;
    background: rgba(232,96,76,.11);
    color: #cf6045;
    font-weight: 900;
}

.ra-next-step strong {
    color: var(--text);
    line-height: 1.25;
}

.ra-next-step p {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.45;
}

.ra-next-step em {
    color: #cf6045;
    font-style: normal;
    font-weight: 850;
}

.relocation-affordability-support {
    max-width: 100%;
    min-width: 0;
}

.relocation-affordability-support > *,
.relocation-affordability-support .tool-decision-strip-block,
.relocation-affordability-support .tool-decision-strip,
.relocation-affordability-support .info-card,
.relocation-affordability-support .tool-guides-card,
.relocation-affordability-support .related-links-card,
.relocation-affordability-support .faq-section,
.relocation-affordability-support .subsection-block {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

@media (max-width: 1180px) {
    .ra-kpi-grid,
    .ra-dashboard-main-grid,
    .ra-next-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ra-insights-panel {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .ra-dashboard-hero,
    .ra-kpi-grid,
    .ra-dashboard-main-grid,
    .ra-chart-layout,
    .ra-doc-costs-grid,
    .ra-next-grid {
        grid-template-columns: 1fr;
    }

    .ra-score-card {
        justify-items: start;
        text-align: left;
    }

    .ra-score-ring,
    .ra-donut {
        justify-self: center;
    }
}

@media (max-width: 640px) {
    .relocation-affordability-results-frame {
        padding: .85rem;
        border-radius: 18px;
        overflow: hidden;
    }

    .ra-dashboard-verdict,
    .ra-score-card,
    .ra-kpi-card,
    .ra-panel {
        border-radius: 18px;
        padding: .95rem;
    }

    .ra-dashboard-verdict__body {
        grid-template-columns: 1fr;
    }

    .ra-dashboard-verdict__icon {
        width: 3.3rem;
        height: 3.3rem;
        font-size: 1.55rem;
    }

    .ra-score-ring {
        width: 8.5rem;
        height: 8.5rem;
    }

    .ra-score-ring__center {
        width: 5.85rem;
        height: 5.85rem;
    }

    .ra-donut {
        width: min(12rem, 100%);
    }

    .ra-donut__center {
        width: 7rem;
        height: 7rem;
    }

    .ra-budget-row,
    .ra-chart-legend li {
        grid-template-columns: minmax(0, 1fr);
    }
}


/* Relocation affordability donut legend readability fix */
.ra-chart-legend li {
    grid-template-columns: .9rem minmax(0, 1fr);
    grid-template-areas:
        "dot label"
        ". value";
    column-gap: .65rem;
    row-gap: .18rem;
    align-items: start;
}

.ra-chart-dot {
    grid-area: dot;
    margin-top: .34rem;
}

.ra-chart-legend li > span:not(.ra-chart-dot) {
    grid-area: label;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.ra-chart-legend strong {
    grid-area: value;
    display: block;
    margin-top: .04rem;
    font-size: 1rem;
    line-height: 1.2;
    text-align: left;
    white-space: normal;
}

@media (max-width: 900px) {
    .ra-chart-legend {
        width: 100%;
    }
}


/* Relocation affordability: data basis belongs to result flow before next steps */
.ra-data-basis-panel .ra-panel-heading p {
    margin: .35rem 0 0;
    color: var(--muted);
    line-height: 1.55;
}

.ra-data-basis-panel .trust-basis-grid {
    margin-top: .25rem;
}


/* Equivalent income calculator redesign */
.equivalent-income-page-v2 {
    padding-top: clamp(1.2rem, 2.5vw, 2.2rem);
}

.equivalent-income-workzone-v2 {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(340px, .82fr);
    gap: 1.25rem;
    align-items: start;
    position: relative;
    padding: clamp(1rem, 2vw, 1.35rem);
    border: 1px solid rgba(232, 96, 76, .14);
    border-radius: 32px;
    background:
        radial-gradient(circle at 3% 0%, rgba(232, 96, 76, .11), transparent 30%),
        radial-gradient(circle at 94% 6%, rgba(45, 106, 90, .11), transparent 26%),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(252,247,241,.96));
    box-shadow: 0 26px 64px rgba(26,31,54,.08);
}

.equivalent-income-page-v2 .equivalent-income-main-column {
    display: grid;
    gap: 1rem;
    min-width: 0;
}

.equivalent-income-page-v2 .equivalent-income-side-column {
    min-width: 0;
}

.equiv-result-stack {
    display: grid;
    gap: 1rem;
    position: sticky;
    top: 1rem;
}

.equiv-tool-card,
.equiv-result-card {
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 28px;
    background: rgba(255,255,255,.94);
    box-shadow: 0 16px 42px rgba(26,31,54,.065);
}

.equiv-tool-card {
    padding: clamp(1.05rem, 2vw, 1.35rem);
}

.equiv-form-card {
    overflow: hidden;
}

.equiv-card-header,
.equiv-result-header,
.equiv-chart-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.equiv-card-header h2,
.equiv-result-header h2,
.equiv-chart-head h3,
.equiv-form-step__head h3,
.equiv-next-card h3,
.equiv-why-panel h3 {
    margin: 0;
    color: var(--heading);
    line-height: 1.15;
}

.equiv-card-header h2 {
    font-size: clamp(1.45rem, 2.5vw, 1.95rem);
}

.equiv-card-header p,
.equiv-chart-head p,
.equiv-form-step__head p,
.equiv-main-result p,
.equiv-income-meaning p,
.equiv-why-panel p,
.equiv-benefit-grid p {
    margin: .35rem 0 0;
    color: var(--text-secondary);
    line-height: 1.58;
}

.equiv-reset-link {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    white-space: nowrap;
    min-height: 2.2rem;
    padding: .45rem .72rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 999px;
    background: #fff;
    color: var(--text-secondary);
    font-weight: 800;
    font-size: .85rem;
}

.equiv-trust-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .7rem;
    margin-top: 1rem;
}

.equiv-trust-row span {
    display: flex;
    gap: .5rem;
    align-items: center;
    min-height: 3.1rem;
    padding: .65rem .75rem;
    border: 1px solid rgba(26,31,54,.07);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(248,250,252,.98), rgba(255,255,255,.98));
    color: var(--text-secondary);
    font-size: .85rem;
    font-weight: 700;
}

.equiv-trust-row i {
    display: grid;
    place-items: center;
    flex: 0 0 2rem;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: rgba(232,96,76,.1);
    font-style: normal;
}

.equivalent-income-form-v2 {
    display: grid;
    gap: 1rem;
    padding: 0;
    margin-top: 1rem;
    background: transparent;
}

.equiv-form-step {
    display: grid;
    gap: .85rem;
    padding: 1rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 24px;
    background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.92));
}

.equiv-form-step__head {
    display: grid;
    grid-template-columns: auto auto minmax(0,1fr);
    gap: .75rem;
    align-items: start;
}

.equiv-step-number,
.equiv-step-icon {
    display: grid;
    place-items: center;
    width: 2.55rem;
    height: 2.55rem;
    border-radius: 16px;
    font-weight: 900;
}

.equiv-step-number {
    background: rgba(232,96,76,.12);
    color: var(--primary-dark);
}

.equiv-step-icon {
    background: rgba(45,106,90,.1);
    color: var(--accent);
    font-size: 1.1rem;
}

.equiv-route-selectors,
.equiv-form-grid,
.equiv-income-row {
    display: grid;
    gap: .8rem;
}

.equiv-route-selectors {
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    align-items: end;
}

.equiv-form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.equiv-form-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.equiv-income-row {
    grid-template-columns: minmax(0, 1.25fr) minmax(240px, .75fr);
    align-items: stretch;
}

.equiv-field-card {
    min-width: 0;
    padding: .8rem;
    border: 1px solid rgba(26,31,54,.075);
    border-radius: 18px;
    background: rgba(255,255,255,.92);
    box-shadow: 0 8px 22px rgba(26,31,54,.035);
}

.equiv-field-card label {
    display: flex;
    align-items: center;
    gap: .4rem;
    margin-bottom: .45rem;
    color: var(--text-secondary);
    font-weight: 800;
}

.equiv-field-card label span {
    display: grid;
    place-items: center;
    width: 1.45rem;
    height: 1.45rem;
    border-radius: 8px;
    background: rgba(232,96,76,.09);
    font-size: .95rem;
}

.equiv-field-card select,
.equiv-field-card input {
    min-height: 3rem;
}

.equiv-route-swap {
    display: grid;
    place-items: center;
    width: 2.65rem;
    height: 2.65rem;
    margin-bottom: .9rem;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(232,96,76,.14), rgba(245,158,11,.13));
    color: var(--primary-dark);
    font-size: 1.25rem;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(232,96,76,.12);
}

.equiv-income-meaning {
    display: grid;
    align-content: center;
    gap: .5rem;
    padding: 1rem;
    border: 1px solid rgba(45,106,90,.12);
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(240,253,244,.9), rgba(255,255,255,.95));
}

.equiv-income-meaning > span {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border-radius: 18px;
    background: rgba(45,106,90,.12);
    color: var(--accent);
    font-size: 1.45rem;
    font-weight: 900;
}

.equiv-income-meaning strong {
    color: var(--heading);
    font-size: 1.06rem;
}

.equiv-assumption-chips {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .65rem;
}

.equiv-assumption-chips span {
    display: flex;
    align-items: center;
    gap: .45rem;
    min-height: 3rem;
    padding: .65rem .72rem;
    border: 1px solid rgba(26,31,54,.07);
    border-radius: 16px;
    background: rgba(255,255,255,.85);
    color: var(--text-secondary);
    font-weight: 800;
    font-size: .88rem;
}

.equiv-assumption-chips i {
    display: grid;
    place-items: center;
    width: 1.8rem;
    height: 1.8rem;
    border-radius: 10px;
    background: rgba(59,130,246,.08);
    font-style: normal;
}

.equiv-form-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding-top: .15rem;
}

.equiv-form-actions .button {
    min-height: 3.15rem;
    padding-inline: 1.15rem;
}

.equiv-form-actions .button span {
    margin-right: .35rem;
}

.equiv-form-actions p {
    display: flex;
    gap: .45rem;
    align-items: center;
    margin: 0;
    color: var(--muted);
    font-size: .88rem;
    font-weight: 700;
}

.equiv-result-card {
    display: grid;
    gap: .95rem;
    padding: 1rem;
    overflow: hidden;
    background:
        radial-gradient(circle at 95% 0%, rgba(22,163,74,.12), transparent 28%),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,252,248,.96));
}

.equiv-estimate-badge {
    display: inline-flex;
    align-items: center;
    min-height: 2rem;
    padding: .35rem .62rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 999px;
    background: rgba(241,247,255,.95);
    color: #1d4ed8;
    font-size: .78rem;
    font-weight: 900;
    white-space: nowrap;
}

.equiv-estimate-badge--lighter {
    background: rgba(237,250,240,.96);
    border-color: rgba(22,163,74,.18);
    color: #166534;
}

.equiv-estimate-badge--tighter {
    background: rgba(255,248,236,.96);
    border-color: rgba(217,119,6,.2);
    color: #9a5a05;
}

.equiv-main-result {
    display: grid;
    gap: .25rem;
    padding: 1.05rem;
    border: 1px solid rgba(45,106,90,.13);
    border-radius: 22px;
    background: linear-gradient(135deg, rgba(240,253,244,.98), rgba(255,255,255,.96));
    text-align: center;
}

.equiv-main-result span {
    color: var(--text-secondary);
    font-size: .84rem;
    font-weight: 800;
}

.equiv-main-result strong {
    color: #166534;
    font-size: clamp(2.1rem, 5vw, 3rem);
    line-height: 1.02;
    letter-spacing: -.05em;
}

.equiv-journey-card {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
    gap: .65rem;
    align-items: center;
    padding: .8rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 20px;
    background: rgba(255,255,255,.9);
}

.equiv-journey-card > div {
    min-width: 0;
    display: grid;
    gap: .18rem;
}

.equiv-journey-card p {
    margin: 0;
    color: var(--muted);
    font-size: .76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.equiv-journey-card strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--heading);
}

.equiv-journey-card em {
    color: var(--text-secondary);
    font-style: normal;
    font-size: .86rem;
    font-weight: 800;
}

.equiv-flag {
    display: grid;
    place-items: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 12px;
    background: rgba(248,250,252,.95);
    box-shadow: inset 0 0 0 1px rgba(26,31,54,.06);
    font-size: 1.25rem;
}

.equiv-journey-arrow {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 999px;
    background: rgba(232,96,76,.1);
    color: var(--primary-dark);
    font-weight: 900;
}

.equiv-kpi-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: .7rem;
}

.equiv-kpi {
    display: grid;
    gap: .24rem;
    min-width: 0;
    padding: .82rem;
    border: 1px solid rgba(26,31,54,.07);
    border-radius: 18px;
    background: #fff;
}

.equiv-kpi span {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 12px;
    margin-bottom: .12rem;
    background: rgba(26,31,54,.06);
}

.equiv-kpi p {
    margin: 0;
    color: var(--muted);
    font-size: .78rem;
    font-weight: 900;
}

.equiv-kpi strong {
    color: var(--heading);
    font-size: 1rem;
    line-height: 1.18;
    overflow-wrap: anywhere;
}

.equiv-kpi--green { background: linear-gradient(180deg, rgba(240,253,244,.95), #fff); }
.equiv-kpi--orange { background: linear-gradient(180deg, rgba(255,247,237,.95), #fff); }
.equiv-kpi--blue { background: linear-gradient(180deg, rgba(239,246,255,.95), #fff); }
.equiv-kpi--purple { background: linear-gradient(180deg, rgba(245,243,255,.95), #fff); }

.equiv-chart-panel {
    display: grid;
    gap: .85rem;
    padding: .9rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 20px;
    background: rgba(255,255,255,.9);
}

.equiv-chart-head {
    display: grid;
    gap: .25rem;
}

.equiv-chart-head h3 {
    font-size: 1rem;
}

.equiv-chart-head p {
    font-size: .84rem;
}

.equiv-donut-layout {
    display: grid;
    grid-template-columns: 11.5rem minmax(0,1fr);
    gap: .9rem;
    align-items: center;
}

.equiv-donut {
    display: grid;
    place-items: center;
    width: 11.5rem;
    height: 11.5rem;
    border-radius: 999px;
    background: var(--equiv-donut-gradient, conic-gradient(
        #e5e7eb 0 100%
    ));
    box-shadow: 0 16px 34px rgba(26,31,54,.09);
}

.equiv-donut > div {
    display: grid;
    place-items: center;
    width: 7.1rem;
    height: 7.1rem;
    border-radius: 999px;
    padding: .55rem;
    background: #fff;
    text-align: center;
    box-shadow: 0 8px 18px rgba(26,31,54,.08);
}

.equiv-donut strong {
    color: var(--heading);
    font-size: .98rem;
    line-height: 1.1;
    overflow-wrap: anywhere;
}

.equiv-donut span {
    color: var(--muted);
    font-size: .74rem;
    font-weight: 900;
}

.equiv-donut-legend {
    display: grid;
    gap: .46rem;
}

.equiv-donut-legend span {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) auto;
    gap: .4rem;
    align-items: center;
    color: var(--text-secondary);
    font-size: .82rem;
    font-weight: 800;
}

.equiv-donut-legend b {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.equiv-donut-legend em {
    color: var(--heading);
    font-style: normal;
}

.equiv-dot {
    width: .72rem;
    height: .72rem;
    border-radius: 999px;
    background: #94a3b8;
}

.equiv-dot--housing { background: #e8604c; }
.equiv-dot--groceries { background: #f59e0b; }
.equiv-dot--transport { background: #14a36d; }
.equiv-dot--utilities { background: #2563eb; }
.equiv-dot--healthcare { background: #38bdf8; }
.equiv-dot--lifestyle { background: #8b5cf6; }
.equiv-dot--family { background: #ec4899; }
.equiv-dot--other { background: #94a3b8; }

.equiv-driver-list {
    display: grid;
    gap: .6rem;
}

.equiv-driver-row {
    display: grid;
    grid-template-columns: minmax(7rem, .78fr) minmax(0, 1fr) auto;
    gap: .55rem;
    align-items: center;
}

.equiv-driver-row > span {
    color: var(--text-secondary);
    font-size: .82rem;
    font-weight: 800;
}

.equiv-driver-row > div {
    height: .68rem;
    border-radius: 999px;
    background: rgba(26,31,54,.08);
    overflow: hidden;
}

.equiv-driver-row i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #94a3b8;
}

.equiv-driver-row--lower i { background: linear-gradient(90deg, #166534, #22c55e); }
.equiv-driver-row--higher i { background: linear-gradient(90deg, #e8604c, #f97316); }
.equiv-driver-row--neutral i { background: linear-gradient(90deg, #64748b, #94a3b8); }

.equiv-driver-row strong {
    color: var(--heading);
    font-size: .84rem;
    min-width: 3.1rem;
    text-align: right;
}

.equiv-why-panel,
.equiv-confidence-note,
.equiv-next-card {
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 20px;
    background: rgba(248,250,252,.82);
    padding: .95rem;
}

.equiv-why-panel {
    display: grid;
    gap: .65rem;
}

.equiv-why-panel h3,
.equiv-next-card h3 {
    font-size: 1.08rem;
}

.equiv-why-panel p {
    display: grid;
    grid-template-columns: auto minmax(0,1fr);
    gap: .6rem;
    align-items: start;
    margin: 0;
}

.equiv-why-panel p span,
.equiv-confidence-note span {
    display: grid;
    place-items: center;
    width: 2rem;
    height: 2rem;
    border-radius: 12px;
    background: rgba(232,96,76,.09);
}

.equiv-confidence-note {
    display: grid;
    grid-template-columns: auto minmax(0,1fr);
    gap: .65rem;
    align-items: start;
}

.equiv-confidence-note p {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.55;
}

.equiv-next-card {
    display: grid;
    gap: .75rem;
}

.equiv-next-links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: .6rem;
}

.equiv-next-links a {
    display: grid;
    gap: .45rem;
    min-height: 5rem;
    padding: .75rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 16px;
    background: #fff;
    color: var(--heading);
    font-weight: 800;
}

.equiv-next-links a span {
    color: var(--primary);
    font-size: 1.2rem;
}

.equiv-baseline-grid,
.equiv-benefit-grid {
    display: grid;
    gap: .75rem;
}

.equiv-baseline-grid {
    grid-template-columns: repeat(3, minmax(0,1fr));
}

.equiv-baseline-grid article,
.equiv-benefit-grid article {
    padding: 1rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 20px;
    background: rgba(255,255,255,.88);
}

.equiv-baseline-grid span,
.equiv-benefit-grid span {
    display: block;
    margin-bottom: .45rem;
    color: var(--muted);
    font-size: .82rem;
    font-weight: 900;
}

.equiv-baseline-grid strong {
    color: var(--heading);
    font-size: 1.12rem;
}

.equiv-usage-section {
    background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.92));
}

.equiv-benefit-grid {
    grid-template-columns: repeat(4, minmax(0,1fr));
    margin-top: .95rem;
}

.equiv-benefit-grid article > span {
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border-radius: 18px;
    background: rgba(59,130,246,.08);
    font-size: 1.35rem;
}

.equiv-benefit-grid strong {
    display: block;
    color: var(--heading);
    line-height: 1.25;
}

.equiv-ranking-list {
    display: grid;
    gap: .7rem;
    margin-top: 1rem;
}

.equiv-ranking-row {
    display: grid;
    grid-template-columns: auto minmax(0,1fr) minmax(12rem,.6fr) auto minmax(9rem,.48fr);
    gap: .8rem;
    align-items: center;
    padding: .9rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 18px;
    background: rgba(255,255,255,.9);
}

.equiv-ranking-row__rank {
    display: grid;
    place-items: center;
    width: 2.6rem;
    height: 2.6rem;
    border-radius: 14px;
    background: rgba(232,96,76,.1);
    color: var(--primary-dark);
    font-weight: 900;
}

.equiv-ranking-row p,
.equiv-ranking-row span {
    margin: 0;
    color: var(--muted);
    font-size: .84rem;
}

.equiv-ranking-row strong {
    color: var(--heading);
}

.equiv-lead-after-result .lead-assist-card {
    margin-top: 0;
}

.equivalent-income-page-v2 .tool-guides-card,
.equivalent-income-page-v2 .related-links-card {
    border-radius: 24px;
}

@media (max-width: 1100px) {
    .equivalent-income-workzone-v2 {
        grid-template-columns: 1fr;
    }

    .equiv-result-stack {
        position: static;
    }

    .equiv-result-card {
        max-width: none;
    }
}

@media (max-width: 860px) {
    .equiv-trust-row,
    .equiv-form-grid,
    .equiv-form-grid--three,
    .equiv-income-row,
    .equiv-benefit-grid,
    .equiv-baseline-grid,
    .equiv-next-links,
    .equiv-kpi-grid {
        grid-template-columns: 1fr;
    }

    .equiv-route-selectors {
        grid-template-columns: 1fr;
    }

    .equiv-route-swap {
        margin: 0 auto;
        transform: rotate(90deg);
    }

    .equiv-donut-layout {
        grid-template-columns: 1fr;
    }

    .equiv-donut {
        margin-inline: auto;
    }

    .equiv-ranking-row {
        grid-template-columns: 1fr;
    }

    .equiv-card-header,
    .equiv-result-header,
    .equiv-form-actions {
        display: grid;
    }

    .equiv-form-actions .button {
        width: 100%;
    }
}

@media (max-width: 560px) {
    .equivalent-income-workzone-v2 {
        padding: .7rem;
        border-radius: 24px;
    }

    .equiv-tool-card,
    .equiv-result-card,
    .equiv-form-step {
        border-radius: 20px;
    }

    .equiv-form-step__head {
        grid-template-columns: auto minmax(0,1fr);
    }

    .equiv-step-icon {
        display: none;
    }

    .equiv-journey-card {
        grid-template-columns: 1fr;
    }

    .equiv-journey-arrow {
        transform: rotate(90deg);
        margin-inline: auto;
    }

    .equiv-main-result strong {
        font-size: 2rem;
    }
}

@media print {
    .equiv-form-card,
    .equiv-next-card,
    .equiv-lead-after-result,
    .equivalent-income-page-v2 .tool-guides-card,
    .equivalent-income-page-v2 .related-links-card {
        display: none !important;
    }

    .equivalent-income-workzone-v2 {
        display: block;
        box-shadow: none;
        border-color: #ddd;
    }

    .equiv-result-stack {
        position: static;
    }
}


/* Salary and offer tool form unification */
.salary-tool-redesign-card {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(26,31,54,.08);
    background:
        radial-gradient(circle at 98% 0%, rgba(232,96,76,.10), transparent 30%),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,250,247,.94));
    box-shadow: 0 22px 60px rgba(26,31,54,.08);
}

.salary-tool-redesign-card::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(232,96,76,.07), transparent 18%),
        radial-gradient(circle at 10% 0%, rgba(245,158,11,.08), transparent 28%);
}

.salary-tool-redesign-card > * {
    position: relative;
    z-index: 1;
}

.salary-tool-card-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    padding: .2rem .15rem .55rem;
}

.salary-tool-card-head__copy h2 {
    margin: .12rem 0 .25rem;
}

.salary-tool-card-head__copy .section-intro,
.salary-tool-card-head__copy .form-outcome-hint {
    margin-bottom: 0;
}

.salary-tool-app-icon {
    position: relative;
    display: inline-grid;
    place-items: center;
    width: 3.55rem;
    height: 3.55rem;
    border-radius: 18px;
    color: #fff;
    background: linear-gradient(135deg, #ef5f43, #f59e0b);
    box-shadow: 0 16px 32px rgba(232,96,76,.20);
    overflow: hidden;
    flex: 0 0 auto;
}

.salary-tool-app-icon::before,
.salary-tool-app-icon::after {
    content: '';
    position: absolute;
    border-radius: 8px;
    background: rgba(255,255,255,.92);
}

.salary-tool-app-icon::before {
    width: 1.2rem;
    height: 1.2rem;
    left: .7rem;
    top: .72rem;
    box-shadow:
        1.55rem 0 0 rgba(255,255,255,.72),
        0 1.55rem 0 rgba(255,255,255,.72),
        1.55rem 1.55rem 0 rgba(255,255,255,.92);
}

.salary-tool-app-icon::after {
    width: 2.1rem;
    height: .32rem;
    left: .72rem;
    bottom: .58rem;
    opacity: .72;
}

.salary-tool-app-icon--offer-quality {
    background: linear-gradient(135deg, #2563eb, #8b5cf6);
    box-shadow: 0 16px 32px rgba(37,99,235,.18);
}

.salary-tool-app-icon--conditions {
    background: linear-gradient(135deg, #f97316, #e8604c);
}

.salary-tool-app-icon--salary {
    background: linear-gradient(135deg, #14a36d, #38bdf8);
    box-shadow: 0 16px 32px rgba(20,163,109,.18);
}

.salary-tool-app-icon--ranking {
    background: linear-gradient(135deg, #e8604c, #f59e0b);
}

.salary-tool-form-v2 {
    display: grid;
    gap: 1.15rem;
}

.salary-tool-section-heading {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .85rem;
    align-items: start;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(232,96,76,.13);
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(255,247,237,.88), rgba(255,255,255,.78));
}

.salary-tool-section-heading--compact {
    margin-bottom: .85rem;
}

.salary-tool-section-heading .mini-label {
    margin: 0 0 .18rem;
    color: var(--primary);
    letter-spacing: .06em;
}

.salary-tool-section-heading p:not(.mini-label) {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.5;
}

.salary-tool-section-icon {
    position: relative;
    display: inline-grid;
    place-items: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 14px;
    background: rgba(232,96,76,.10);
    box-shadow: inset 0 0 0 1px rgba(232,96,76,.12);
}

.salary-tool-section-icon::before {
    content: '';
    width: 1.18rem;
    height: 1.18rem;
    border-radius: 5px;
    background: var(--primary);
    box-shadow:
        .52rem .52rem 0 rgba(245,158,11,.95),
        -.2rem .72rem 0 rgba(37,99,235,.72);
}

.salary-tool-section-grid {
    padding: .2rem;
}

.salary-tool-form-v2 .form-field {
    border-radius: 18px;
    background: rgba(255,255,255,.84);
}

.salary-tool-form-v2 .form-field label {
    font-weight: 800;
}

.salary-tool-form-v2 .tool-actions,
.salary-tool-form-v2 .form-actions {
    padding-top: .25rem;
}

.salary-tool-form-v2 .button-primary {
    box-shadow: 0 14px 28px rgba(232,96,76,.18);
}

@media (max-width: 760px) {
    .salary-tool-card-head,
    .salary-tool-section-heading {
        grid-template-columns: 1fr;
    }

    .salary-tool-app-icon,
    .salary-tool-section-icon {
        width: 3rem;
        height: 3rem;
    }
}


/* Highest Paying Countries result redesign hotfix */
.highest-paying-redesign-layout{
  grid-template-columns:minmax(0,1fr)!important;
  gap:1.25rem;
}
.highest-paying-redesign-layout .highest-paying-main-column,
.highest-paying-redesign-layout .highest-paying-side-column,
.highest-paying-redesign-layout .highest-paying-side-stack{
  width:100%;
  max-width:none;
  min-width:0;
}
.highest-paying-redesign-layout .highest-paying-side-stack{
  position:static;
}
.highest-paying-redesign-layout .highest-paying-summary-card{
  padding:clamp(1.15rem,2vw,1.5rem);
  border-color:rgba(112,141,183,.18);
  background:linear-gradient(180deg,rgba(250,252,255,.98),rgba(255,255,255,.98));
  box-shadow:0 20px 48px rgba(15,23,42,.08);
}
.highest-paying-score-summary{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:1rem;
  align-items:center;
  margin:1rem 0;
  padding:1rem;
  border-radius:1.15rem;
  border:1px solid rgba(112,141,183,.14);
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,248,255,.98));
}
.highest-paying-score-summary p{margin:0;color:var(--text-secondary);font-size:1rem;line-height:1.6}
.highest-paying-score-ring{
  --ring-color:#2563eb;
  position:relative;
  display:grid;
  place-items:center;
  width:8.8rem;
  height:8.8rem;
  border-radius:50%;
  background:conic-gradient(var(--ring-color) var(--score), rgba(226,232,240,.9) 0);
}
.highest-paying-score-ring--good{--ring-color:#1f9d66}
.highest-paying-score-ring--balanced{--ring-color:#2563eb}
.highest-paying-score-ring--watch{--ring-color:#e8604c}
.highest-paying-score-ring:before{
  content:"";
  position:absolute;
  inset:.82rem;
  border-radius:50%;
  background:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.8);
}
.highest-paying-score-ring>div{
  position:relative;
  display:grid;
  gap:.1rem;
  justify-items:center;
  z-index:1;
}
.highest-paying-score-ring strong{
  font-size:2rem;
  line-height:1;
  font-weight:800;
  color:var(--text);
}
.highest-paying-score-ring span{
  font-size:.8rem;
  color:var(--text-secondary);
}
.highest-paying-redesign-layout .highest-paying-summary-card > h2{
  margin-bottom:.35rem;
}
.highest-paying-redesign-layout .highest-paying-metric-stack{
  grid-template-columns:repeat(2,minmax(0,1fr));
  display:grid;
}
.highest-paying-redesign-layout .highest-paying-mini-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.highest-paying-redesign-layout .highest-paying-highlights,
.highest-paying-redesign-layout .highest-paying-confidence-note,
.highest-paying-redesign-layout .highest-paying-flow-card,
.highest-paying-redesign-layout .highest-paying-summary-actions{
  margin-top:1rem;
}
@media(max-width:980px){
  .highest-paying-score-summary,
  .highest-paying-redesign-layout .highest-paying-metric-stack,
  .highest-paying-redesign-layout .highest-paying-mini-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .highest-paying-score-ring{width:7.8rem;height:7.8rem}
  .highest-paying-redesign-layout .highest-paying-summary-card{padding:1rem}
}


/* Highest-paying countries dashboard redesign */
.highest-paying-redesign-layout{grid-template-columns:minmax(0,1fr)!important;gap:1.25rem}
.highest-paying-redesign-layout>.highest-paying-main-column,.highest-paying-results-stack{width:100%;max-width:none;min-width:0}
.highest-paying-redesign-layout .highest-paying-form-card{width:100%;max-width:none}
.highest-paying-redesign-layout .highest-paying-form-card .tool-form,.highest-paying-redesign-layout .salary-tool-section-grid{width:100%;max-width:none}
.highest-paying-results-stack{display:grid;gap:1rem}
.highest-paying-results-card{padding:clamp(1.15rem,2vw,1.5rem);border-color:rgba(112,141,183,.18);background:linear-gradient(180deg,rgba(250,252,255,.98),rgba(255,255,255,.98));box-shadow:0 20px 48px rgba(15,23,42,.08);overflow:hidden}
.highest-paying-results-card__head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1rem}
.highest-paying-results-card__head h2{margin:0;font-size:clamp(1.55rem,2.15vw,2.05rem)}
.highest-paying-results-badge{display:inline-flex;align-items:center;padding:.45rem .8rem;border-radius:999px;border:1px solid rgba(26,31,54,.08);background:rgba(255,255,255,.9);font-size:.84rem;font-weight:800;color:var(--text-secondary);white-space:nowrap}
.highest-paying-dashboard{display:grid;gap:1rem}
.highest-paying-result-hero-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);gap:1rem}
.highest-paying-leader-card,.highest-paying-reliability-card{position:relative;padding:1.25rem 1.3rem;border-radius:1.35rem;border:1px solid rgba(26,31,54,.08);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(246,249,255,.96));overflow:hidden}
.highest-paying-leader-card{min-height:17rem;border-color:rgba(232,96,76,.16);background:radial-gradient(circle at 88% 42%,rgba(112,141,183,.18),transparent 0 18%,transparent 32%),linear-gradient(135deg,rgba(255,250,247,.99),rgba(255,255,255,.96))}
.highest-paying-leader-card:after{content:'';position:absolute;right:1.2rem;bottom:.8rem;width:16rem;height:11rem;background:radial-gradient(ellipse at center,rgba(112,141,183,.22),rgba(112,141,183,.05) 45%,transparent 70%);clip-path:polygon(12% 92%,42% 20%,58% 54%,72% 12%,94% 92%);opacity:.65}
.highest-paying-leader-ribbon{display:inline-flex;align-items:center;width:max-content;margin-bottom:.75rem;padding:.36rem .68rem;border-radius:999px;background:rgba(232,96,76,.10);border:1px solid rgba(232,96,76,.16);color:var(--primary-dark);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.highest-paying-leader-card__content{position:relative;z-index:1;display:grid;gap:.35rem;max-width:30rem}
.highest-paying-leader-card h3{margin:.05rem 0;font-size:clamp(2rem,3vw,3rem);line-height:1.03}
.highest-paying-leader-value{display:block;margin:.3rem 0 .15rem;font-size:clamp(2rem,3vw,3rem);line-height:1.02;letter-spacing:-.035em;color:var(--heading)}
.highest-paying-leader-card p{margin:0;color:var(--text-secondary)}
.highest-paying-card-title{display:grid;gap:.24rem;margin-bottom:.85rem}.highest-paying-card-title h3{margin:0;font-size:1.22rem}.highest-paying-card-title p{margin:0;color:var(--text-secondary)}
.highest-paying-card-title--inline{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}
.highest-paying-reliability-card--good{background:linear-gradient(135deg,rgba(243,251,247,.98),rgba(255,255,255,.98));border-color:rgba(45,106,90,.16)}
.highest-paying-reliability-card--balanced{background:linear-gradient(135deg,rgba(244,248,255,.98),rgba(255,255,255,.98));border-color:rgba(112,141,183,.16)}
.highest-paying-reliability-card--watch{background:linear-gradient(135deg,rgba(255,247,243,.98),rgba(255,255,255,.98));border-color:rgba(232,96,76,.16)}
.highest-paying-reliability-layout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.2rem;align-items:center}
.highest-paying-score-ring{--ring-color:#2563eb;position:relative;display:grid;place-items:center;width:10rem;height:10rem;border-radius:50%;background:conic-gradient(var(--ring-color) var(--score),rgba(226,232,240,.9) 0);box-shadow:0 12px 28px rgba(15,23,42,.08)}
.highest-paying-score-ring--good{--ring-color:#1f9d66}.highest-paying-score-ring--balanced{--ring-color:#2563eb}.highest-paying-score-ring--watch{--ring-color:#e8604c}
.highest-paying-score-ring:before{content:'';position:absolute;inset:.9rem;border-radius:50%;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.highest-paying-score-ring>div{position:relative;display:grid;justify-items:center;z-index:1;text-align:center}
.highest-paying-score-ring strong{font-size:2.15rem;line-height:1;font-weight:900;color:var(--heading)}
.highest-paying-score-ring span{font-size:.82rem;color:var(--text-secondary);font-weight:700}
.highest-paying-reliability-copy{display:grid;gap:.65rem}
.highest-paying-reliability-copy p{margin:0;color:var(--text-secondary);line-height:1.6}
.highest-paying-reliability-copy ul{margin:0;padding:0;list-style:none;display:grid;gap:.35rem}
.highest-paying-reliability-copy li{position:relative;padding-left:1.15rem;color:var(--text-secondary);font-size:.9rem}
.highest-paying-reliability-copy li:before{content:'';position:absolute;left:0;top:.55rem;width:.45rem;height:.45rem;border-radius:50%;background:#1f9d66}
.highest-paying-chip-row{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.6rem}
.highest-paying-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.42rem .72rem;border-radius:999px;background:rgba(255,255,255,.88);border:1px solid rgba(26,31,54,.08);font-size:.84rem;color:var(--text-secondary);font-style:normal}
.highest-paying-chip strong{color:var(--text);font-weight:800}
.highest-paying-chip--good{background:rgba(45,106,90,.10);border-color:rgba(45,106,90,.16);color:#1f6b55}.highest-paying-chip--balanced{background:rgba(112,141,183,.10);border-color:rgba(112,141,183,.16);color:#305d93}.highest-paying-chip--watch{background:rgba(232,96,76,.10);border-color:rgba(232,96,76,.16);color:#b44d3b}
.highest-paying-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.highest-paying-kpi-card{display:grid;gap:.45rem;padding:1rem 1.05rem;border-radius:1.1rem;border:1px solid rgba(26,31,54,.08);background:rgba(255,255,255,.98)}
.highest-paying-kpi-card--primary{background:linear-gradient(180deg,rgba(255,250,247,.98),rgba(255,255,255,.98));border-color:rgba(232,96,76,.16)}
.highest-paying-kpi-card--muted strong{color:var(--text-secondary)}
.highest-paying-kpi-card--good{background:linear-gradient(180deg,rgba(243,251,247,.98),rgba(255,255,255,.98));border-color:rgba(45,106,90,.16)}.highest-paying-kpi-card--balanced{background:linear-gradient(180deg,rgba(244,248,255,.98),rgba(255,255,255,.98));border-color:rgba(112,141,183,.16)}.highest-paying-kpi-card--watch{background:linear-gradient(180deg,rgba(255,247,243,.98),rgba(255,255,255,.98));border-color:rgba(232,96,76,.16)}
.highest-paying-kpi-card strong{font-size:1.15rem;line-height:1.25}.highest-paying-kpi-card--primary .highest-paying-kpi-value{font-size:1.75rem;line-height:1.05;letter-spacing:-.03em}
.highest-paying-mini-meter{position:relative;height:.58rem;border-radius:999px;background:rgba(226,232,240,.9);overflow:hidden;margin-top:.15rem}.highest-paying-mini-meter span{position:absolute;left:0;top:0;bottom:0;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#60a5fa)}
.highest-paying-kpi-card--good .highest-paying-mini-meter span{background:linear-gradient(90deg,#1f9d66,#60d394)}.highest-paying-kpi-card--watch .highest-paying-mini-meter span{background:linear-gradient(90deg,#ef5f43,#f59e0b)}
.highest-paying-ranking-section{display:grid;gap:1rem;padding:1.05rem 1.1rem;border-radius:1.2rem;border:1px solid rgba(112,141,183,.14);background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(248,250,255,.96))}
.highest-paying-ranking-section__title{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:0}.highest-paying-ranking-section__title>p{max-width:28rem}
.highest-paying-ranking-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:1rem;align-items:start}
.highest-paying-bar-chart-card,.highest-paying-ranking-table-card{padding:1rem;border-radius:1.1rem;border:1px solid rgba(26,31,54,.08);background:#fff;min-width:0}
.highest-paying-bar-chart-card h4,.highest-paying-ranking-table-card h4{margin:0 0 .8rem;font-size:1.05rem}
.highest-paying-bar-list{display:grid;gap:.58rem}
.highest-paying-bar-row{display:grid;grid-template-columns:2rem minmax(7rem,.9fr) minmax(8rem,1.4fr) minmax(7rem,.8fr);gap:.55rem;align-items:center;font-size:.9rem}
.highest-paying-bar-row__rank{display:inline-grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:999px;background:rgba(232,96,76,.10);color:var(--primary-dark);font-weight:800}
.highest-paying-bar-row__country{font-weight:700;color:var(--text)}
.highest-paying-bar-row__track{position:relative;height:.7rem;border-radius:999px;background:rgba(226,232,240,.9);overflow:hidden}.highest-paying-bar-row__track i{position:absolute;left:0;top:0;bottom:0;border-radius:inherit;background:linear-gradient(90deg,#1f9d66,#60d394)}
.highest-paying-bar-row strong{font-size:.86rem;color:var(--text);text-align:right}
.highest-paying-ranking-table-card{overflow:hidden}
.highest-paying-clean-table{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;padding-bottom:.15rem;gap:.35rem}
.highest-paying-clean-table__head,.highest-paying-clean-table__row{display:grid;grid-template-columns:2.2rem minmax(8rem,1.2fr) minmax(8rem,1fr) minmax(8rem,1fr) minmax(5.5rem,.7fr) minmax(5.5rem,.7fr);gap:.5rem;align-items:center;min-width:48rem}
.highest-paying-clean-table__head{padding:.55rem .65rem;border-radius:.75rem;background:rgba(246,249,255,.95);font-size:.78rem;font-weight:800;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}
.highest-paying-clean-table__row{padding:.7rem .65rem;border-radius:.85rem;border:1px solid rgba(26,31,54,.06);background:rgba(255,255,255,.98);font-size:.86rem}
.highest-paying-clean-table__row small{display:block;margin-top:.15rem;color:var(--text-secondary);font-size:.75rem}
.highest-paying-explainer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.highest-paying-note-card{padding:1.05rem 1.1rem;border-radius:1.15rem;border:1px solid rgba(26,31,54,.08);background:rgba(255,255,255,.98)}
.highest-paying-note-card--reader{background:linear-gradient(180deg,rgba(244,248,255,.98),rgba(255,255,255,.98));border-color:rgba(112,141,183,.14)}.highest-paying-note-card--warning{background:linear-gradient(180deg,rgba(255,252,248,.98),rgba(255,255,255,.98));border-color:rgba(224,94,62,.16)}.highest-paying-note-card--next{background:linear-gradient(180deg,rgba(243,251,247,.98),rgba(255,255,255,.98));border-color:rgba(45,106,90,.14)}
.highest-paying-icon-list{display:grid;gap:.8rem;margin:0;padding:0;list-style:none}.highest-paying-icon-list li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.65rem}.highest-paying-icon-list span{display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:.85rem;background:rgba(255,255,255,.85);border:1px solid rgba(26,31,54,.06)}.highest-paying-icon-list strong{display:block}.highest-paying-icon-list p{margin:.15rem 0 0;color:var(--text-secondary)}
.highest-paying-bullet-list{margin:.35rem 0 0 1.1rem;padding:0;display:grid;gap:.5rem;color:var(--text-secondary)}.highest-paying-bullet-list li{line-height:1.58}.highest-paying-note-callout{margin-top:.75rem;padding:.8rem .9rem;border-radius:1rem;background:rgba(255,255,255,.88);border:1px solid rgba(26,31,54,.06);color:var(--text-secondary)}
.highest-paying-flow-list{margin:.55rem 0 0;padding-left:1.1rem;display:grid;gap:.48rem;color:var(--text-secondary)}
.highest-paying-placeholder{padding:1.1rem 1.15rem;border-radius:1.05rem;background:rgba(255,255,255,.96);border:1px solid rgba(26,31,54,.06)}
@media(max-width:1180px){.highest-paying-result-hero-grid,.highest-paying-ranking-grid,.highest-paying-explainer-grid{grid-template-columns:1fr}.highest-paying-clean-table__head,.highest-paying-clean-table__row{min-width:46rem}.highest-paying-ranking-section__title{display:grid;grid-template-columns:1fr}.highest-paying-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:880px){.highest-paying-reliability-layout,.highest-paying-kpi-grid{grid-template-columns:1fr}.highest-paying-bar-row{grid-template-columns:2rem minmax(0,1fr);gap:.45rem}.highest-paying-bar-row__track{grid-column:1/-1}.highest-paying-bar-row strong{text-align:left;grid-column:2}.highest-paying-results-card__head{display:grid;grid-template-columns:1fr}}
@media(max-width:760px){.highest-paying-results-card,.highest-paying-leader-card,.highest-paying-reliability-card,.highest-paying-ranking-section,.highest-paying-note-card{padding:1rem;border-radius:1rem}.highest-paying-score-ring{width:8rem;height:8rem}.highest-paying-leader-card:after{display:none}}

/* Remove old top-right Tool/Calculator badges from tool cards. */
.tool-workzone-card::after,
.highest-paying-workzone .info-card:first-child::after,
.tool-layout--salary-benchmark .tool-form-wrap > .info-card:first-child::after {
    content: none !important;
    display: none !important;
}

/* City detail infographic redesign */
.city-dashboard-hero{padding-top:2.35rem;background:radial-gradient(circle at 14% 12%,rgba(232,96,76,.11),transparent 28rem),radial-gradient(circle at 88% 4%,rgba(45,106,90,.1),transparent 25rem)}
.city-dashboard-hero .container{gap:1.25rem}
.city-dashboard-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr);gap:1.45rem;align-items:stretch}
.city-dashboard-copy{align-content:center;padding:1.35rem .25rem 1.35rem 0}
.city-dashboard-copy h1{max-width:13ch;margin-bottom:.7rem;font-size:clamp(2.45rem,5.1vw,4.55rem);line-height:1.01;letter-spacing:-.045em}
.city-dashboard-copy .page-description{max-width:46rem;font-size:1.09rem;line-height:1.72;color:var(--text-secondary)}
.city-dashboard-meta-row{display:flex;flex-wrap:wrap;gap:.55rem .7rem;margin-top:.25rem;color:var(--muted);font-size:.88rem;font-weight:600}
.city-dashboard-meta-row span{display:inline-flex;align-items:center;min-height:2.05rem;padding:.42rem .7rem;border:1px solid rgba(26,31,54,.07);border-radius:999px;background:rgba(255,255,255,.75);box-shadow:0 5px 18px rgba(26,31,54,.035)}
.city-dashboard-meta-row span::before{content:'';width:.42rem;height:.42rem;margin-right:.45rem;border-radius:999px;background:rgba(232,96,76,.75)}
.city-dashboard-visual-card{position:relative;min-height:450px;border-radius:28px;overflow:hidden;background:#1a1f36;box-shadow:0 24px 70px rgba(26,31,54,.16);isolation:isolate}
.city-dashboard-photo-wrap{position:absolute;inset:0;overflow:hidden}
.city-dashboard-photo{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.04) contrast(1.02)}
.city-dashboard-photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,16,32,.2),rgba(11,16,32,.04) 42%,rgba(11,16,32,.46)),linear-gradient(0deg,rgba(11,16,32,.42),transparent 48%)}
.city-dashboard-location-pill{position:absolute;left:1rem;bottom:1rem;z-index:2;display:inline-flex;align-items:center;max-width:calc(100% - 2rem);min-height:2.25rem;padding:.48rem .8rem;border-radius:999px;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.48);box-shadow:0 12px 28px rgba(26,31,54,.16);color:var(--text);font-size:.88rem;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.city-dashboard-verdict-panel{position:absolute;z-index:3;right:1rem;top:1rem;width:min(285px,calc(100% - 2rem));padding:1.18rem;border-radius:22px;background:rgba(255,255,255,.95);border:1px solid rgba(255,255,255,.55);box-shadow:0 18px 44px rgba(26,31,54,.18);backdrop-filter:blur(14px)}
.city-dashboard-verdict-panel h2{margin-bottom:.4rem;color:var(--primary-dark);font-size:1.58rem;line-height:1.05;font-family:var(--font-heading)}
.city-dashboard-verdict-panel p{margin-bottom:.55rem;color:var(--text-secondary);font-size:.94rem;line-height:1.48}
.city-dashboard-verdict-panel .mini-label{color:var(--muted)}
.city-score-gauge{--score:50;position:relative;width:9rem;height:5.1rem;margin:.85rem auto 0;display:grid;place-items:end center;overflow:hidden}
.city-score-gauge__arc{position:absolute;inset:0 0 auto;height:9rem;border-radius:9rem 9rem 0 0;background:conic-gradient(from 270deg at 50% 100%,var(--primary) calc(var(--score)*.5%),rgba(232,96,76,.16) 0 50%,transparent 0);transform-origin:50% 100%}
.city-score-gauge__arc::after{content:'';position:absolute;left:1.05rem;right:1.05rem;bottom:0;height:6.9rem;border-radius:7rem 7rem 0 0;background:rgba(255,255,255,.98)}
.city-score-gauge__value{position:relative;z-index:1;display:flex;align-items:baseline;gap:.18rem;margin-bottom:.12rem;color:var(--text)}
.city-score-gauge__value strong{font-size:2rem;line-height:1;color:var(--primary-dark)}
.city-score-gauge__value span{font-weight:800;color:var(--muted)}
.city-score-caption{text-align:center;margin:0!important;font-size:.82rem!important}
.city-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.85rem}
.city-kpi-card{position:relative;min-height:12.5rem;padding:1.08rem 1rem 1.05rem;border-radius:22px;border:1px solid rgba(26,31,54,.07);background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.86));box-shadow:0 12px 36px rgba(26,31,54,.055);overflow:hidden}
.city-kpi-card::after{content:'';position:absolute;right:-2rem;bottom:-2.5rem;width:6.5rem;height:6.5rem;border-radius:999px;background:radial-gradient(circle,rgba(232,96,76,.11),transparent 68%)}
.city-kpi-card .mini-label{min-height:2.4em;margin:.7rem 0 .48rem;color:var(--muted);font-size:.74rem;line-height:1.22}
.city-kpi-card strong{position:relative;z-index:1;display:block;margin-bottom:.22rem;font-family:var(--font-heading);font-size:clamp(1.45rem,2.4vw,2.05rem);line-height:1;color:var(--text);letter-spacing:-.04em}
.city-kpi-card span:not(.icon-badge){position:relative;z-index:1;display:block;color:var(--text-secondary);font-size:.88rem;line-height:1.4;font-weight:600}
.city-kpi-icon,.city-quick-icon,.city-profile-icon{width:2.55rem;height:2.55rem;border-radius:14px;background:rgba(232,96,76,.08);border-color:rgba(232,96,76,.12);color:var(--primary)}
.city-dashboard-panel{padding:1.35rem;border:1px solid rgba(26,31,54,.07);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.82));box-shadow:0 14px 42px rgba(26,31,54,.052);backdrop-filter:blur(10px)}
.city-dashboard-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;margin-bottom:1rem}
.city-dashboard-section-head h2{margin-bottom:.05rem;font-size:clamp(1.35rem,2.1vw,2rem)}
.city-dashboard-section-head .section-intro{max-width:32rem;margin:0;font-size:.98rem;line-height:1.58}
.city-dashboard-section-head--compact{align-items:start;margin-bottom:.9rem}
.city-quick-figure-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}
.city-quick-figure{display:flex;gap:.72rem;align-items:flex-start;min-height:7.8rem;padding:.9rem;border:1px solid rgba(26,31,54,.06);border-radius:18px;background:rgba(250,248,245,.62)}
.city-quick-figure .mini-label{margin-bottom:.25rem;color:var(--muted);font-size:.72rem;line-height:1.22}
.city-quick-figure strong{display:block;margin-bottom:.2rem;font-size:1.12rem;line-height:1.08;color:var(--text);letter-spacing:-.025em}
.city-quick-figure span:not(.icon-badge){display:block;color:var(--text-secondary);font-size:.82rem;line-height:1.32}
.city-dashboard-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:1rem;align-items:stretch}
.city-total-badge{display:inline-flex;align-items:center;justify-content:center;min-height:2.85rem;padding:.55rem .9rem;border-radius:16px;background:rgba(232,96,76,.1);color:var(--primary-dark);font-size:1.12rem;line-height:1;white-space:nowrap;box-shadow:inset 0 0 0 1px rgba(232,96,76,.12)}
.city-total-badge--strong{font-size:1.35rem;background:linear-gradient(135deg,var(--primary),#d4503e);color:#fff;box-shadow:0 12px 28px rgba(232,96,76,.2)}
.city-budget-bars{display:grid;gap:.72rem}
.city-budget-bar-row{display:grid;grid-template-columns:minmax(150px,.95fr) minmax(160px,1.25fr) minmax(105px,.35fr);gap:.82rem;align-items:center;padding:.55rem 0;border-bottom:1px solid rgba(26,31,54,.055)}
.city-budget-bar-row:last-child{border-bottom:0}
.city-budget-bar-label span{display:block;color:var(--text);font-weight:800;font-size:.95rem;line-height:1.25}
.city-budget-bar-label small{display:block;color:var(--muted);font-size:.8rem;line-height:1.25}
.city-budget-bar-track{height:.72rem;border-radius:999px;background:rgba(26,31,54,.07);overflow:hidden}
.city-budget-bar-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#f59b5c)}
.city-budget-bar-row strong{font-size:.9rem;text-align:right;color:var(--text)}
.city-rent-table{display:grid;border:1px solid rgba(26,31,54,.07);border-radius:18px;overflow:hidden;background:rgba(255,255,255,.62)}
.city-rent-row{display:grid;grid-template-columns:minmax(115px,.8fr) repeat(2,minmax(115px,1fr));align-items:center;min-height:3.15rem;border-bottom:1px solid rgba(26,31,54,.06)}
.city-rent-row:last-child{border-bottom:0}
.city-rent-row span,.city-rent-row strong{padding:.72rem .78rem;font-size:.91rem;line-height:1.28}
.city-rent-row strong{font-weight:800;color:var(--text)}
.city-rent-row span:first-child{color:var(--text-secondary);font-weight:700}
.city-rent-row--head{background:rgba(244,241,236,.88)}
.city-rent-row--head span{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;font-weight:800}
.city-soft-note{margin:.9rem 0 0;padding:.82rem .9rem;border-radius:16px;background:rgba(45,106,90,.08);color:var(--text-secondary);font-size:.9rem;line-height:1.48}
.city-profile-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.78rem}
.city-profile-item{min-height:10.3rem;padding:1rem;border:1px solid rgba(26,31,54,.06);border-radius:18px;background:rgba(255,255,255,.72)}
.city-profile-item .mini-label{margin:.72rem 0 .3rem;color:var(--muted);font-size:.72rem}
.city-profile-item strong{display:block;color:var(--text);font-size:.95rem;line-height:1.38}
.city-dashboard-split--comparison{grid-template-columns:minmax(0,1fr) minmax(360px,.9fr)}
.city-radar-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:1.1rem;align-items:center}
.city-radar-chart{width:220px;max-width:100%;height:auto;overflow:visible}
.city-radar-chart circle,.city-radar-chart line{fill:none;stroke:rgba(26,31,54,.11);stroke-width:1}
.city-radar-baseline{fill:rgba(26,31,54,.07);stroke:rgba(26,31,54,.25);stroke-width:1.5}
.city-radar-current{fill:rgba(232,96,76,.22);stroke:var(--primary);stroke-width:2.5}
.city-radar-legend{display:grid;gap:.7rem}
.city-radar-score-row{display:grid;grid-template-columns:minmax(120px,.7fr) minmax(140px,1fr);gap:.8rem;align-items:center;color:var(--text-secondary);font-size:.9rem;font-weight:700}
.city-radar-score{height:.58rem;border-radius:999px;background:rgba(26,31,54,.08);overflow:hidden}
.city-radar-score span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#f59b5c)}
.city-fact-panel{display:grid;grid-template-columns:minmax(150px,.85fr) minmax(0,1fr);gap:1rem;align-items:stretch}
.city-fact-media{min-height:14rem;border-radius:20px;overflow:hidden;background:rgba(26,31,54,.06)}
.city-fact-media img{width:100%;height:100%;object-fit:cover}
.city-fact-copy{display:grid;align-content:center;gap:.45rem}
.city-fact-copy h2{font-size:1.36rem;margin:0}
.city-fact-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin-top:.45rem}
.city-fact-stat-grid div{padding:.72rem;border-radius:15px;background:rgba(250,248,245,.8);border:1px solid rgba(26,31,54,.05)}
.city-fact-stat-grid strong{display:block;font-size:1.04rem;line-height:1.1;color:var(--text);letter-spacing:-.02em}
.city-fact-stat-grid span{display:block;margin-top:.24rem;color:var(--muted);font-size:.78rem;line-height:1.22}
.city-setup-timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;counter-reset:steps}
.city-setup-step{position:relative;min-height:13rem;padding:1.12rem 1rem 1rem;border:1px solid rgba(26,31,54,.065);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(250,248,245,.74))}
.city-setup-step:not(:last-child)::after{content:'→';position:absolute;right:-.75rem;top:50%;transform:translateY(-50%);width:1.5rem;height:1.5rem;border-radius:999px;display:grid;place-items:center;background:#fff;border:1px solid rgba(26,31,54,.08);color:var(--primary);font-weight:900;box-shadow:0 8px 20px rgba(26,31,54,.08);z-index:1}
.city-step-number{display:inline-grid;place-items:center;width:2rem;height:2rem;margin-bottom:.75rem;border-radius:999px;background:rgba(232,96,76,.11);color:var(--primary-dark);font-weight:900}
.city-setup-step h3{margin-bottom:.45rem;font-family:var(--font-body);font-size:1.02rem;letter-spacing:-.015em}
.city-setup-step ul{display:grid;gap:.28rem;margin:.2rem 0 .85rem;padding-left:1.1rem;color:var(--text-secondary);font-size:.9rem;line-height:1.38}
.city-setup-step strong{position:absolute;left:1rem;bottom:1rem;color:var(--text);font-size:1.12rem;letter-spacing:-.02em}
.city-pressure-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}
.city-pressure-card{display:flex;gap:.8rem;align-items:flex-start;min-height:8.5rem;padding:1rem;border:1px solid rgba(232,96,76,.12);border-radius:19px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,245,243,.72))}
.city-pressure-card>span{flex:0 0 auto;display:grid;place-items:center;width:2.35rem;height:2.35rem;border-radius:999px;background:rgba(232,96,76,.12);color:var(--primary-dark);font-weight:900}
.city-pressure-card h3{margin-bottom:.25rem;font-family:var(--font-body);font-size:1rem;letter-spacing:-.01em}
.city-pressure-card p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.42}
.city-persona-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}
.city-persona-card{position:relative;min-height:14rem;padding:0 1rem 1rem;border-radius:20px;border:1px solid rgba(26,31,54,.06);background:#fff;box-shadow:0 8px 26px rgba(26,31,54,.04);overflow:hidden}
.city-persona-visual{height:5.3rem;margin:0 -1rem 1rem;background:linear-gradient(135deg,rgba(232,96,76,.24),rgba(245,155,92,.12)),radial-gradient(circle at 18% 20%,rgba(255,255,255,.65),transparent 2.8rem),radial-gradient(circle at 78% 35%,rgba(26,31,54,.1),transparent 3rem)}
.city-persona-card--green .city-persona-visual{background:linear-gradient(135deg,rgba(45,106,90,.22),rgba(74,158,136,.12)),radial-gradient(circle at 20% 30%,rgba(255,255,255,.72),transparent 2.6rem)}
.city-persona-card--blue .city-persona-visual{background:linear-gradient(135deg,rgba(56,189,248,.22),rgba(79,70,229,.1)),radial-gradient(circle at 24% 20%,rgba(255,255,255,.72),transparent 2.8rem)}
.city-persona-card--navy .city-persona-visual{background:linear-gradient(135deg,rgba(26,31,54,.24),rgba(232,96,76,.1)),radial-gradient(circle at 76% 25%,rgba(255,255,255,.62),transparent 3rem)}
.city-persona-card h3{margin-bottom:.35rem;font-family:var(--font-body);font-size:1.02rem;letter-spacing:-.015em}
.city-persona-card p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.45}
.city-related-visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.city-related-visual-card{display:grid;grid-template-columns:116px minmax(0,1fr);gap:.85rem;min-height:9.25rem;padding:.72rem;border-radius:20px;border:1px solid rgba(26,31,54,.07);background:rgba(255,255,255,.78);transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out)}
.city-related-visual-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(26,31,54,.08)}
.city-related-visual-card img{width:116px;height:100%;min-height:7.8rem;object-fit:cover;border-radius:15px;background:rgba(26,31,54,.06)}
.city-related-visual-card h3{margin:.2rem 0 .15rem;font-family:var(--font-body);font-size:1.08rem;letter-spacing:-.015em}
.city-related-visual-card p{margin:0 0 .6rem;color:var(--muted);font-size:.86rem}
.city-related-visual-card span{color:var(--primary-dark);font-size:.9rem;font-weight:900}
.city-dashboard-cta-panel{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.45rem 1.6rem;border-radius:26px;background:linear-gradient(135deg,#1a1f36,#2a304a);color:#fff;box-shadow:0 22px 60px rgba(26,31,54,.18);overflow:hidden;position:relative}
.city-dashboard-cta-panel::after{content:'';position:absolute;right:-4rem;top:-5rem;width:16rem;height:16rem;border-radius:999px;background:radial-gradient(circle,rgba(232,96,76,.28),transparent 70%)}
.city-dashboard-cta-panel>div,.city-dashboard-cta-panel>a{position:relative;z-index:1}
.city-dashboard-cta-panel h2{margin:.1rem 0 .4rem;color:#fff;font-size:1.75rem}
.city-dashboard-cta-panel p{max-width:42rem;margin:0;color:rgba(255,255,255,.75)}
.city-dashboard-cta-panel .panel-label{color:#8ee0cc}
.city-detail-main-section .container{gap:1.25rem}
.city-analysis-grid,.city-summary-grid,.city-salary-grid,.city-route-grid,.city-related-grid,.city-tool-grid,.city-next-steps-grid,.city-faq-grid{gap:1rem}
.city-reference-details{border-radius:18px;overflow:hidden;background:rgba(255,255,255,.72);border:1px solid rgba(26,31,54,.07);box-shadow:0 8px 24px rgba(26,31,54,.035)}
.city-reference-details summary{padding:1rem 1.1rem;cursor:pointer;font-weight:800;color:var(--text);background:rgba(250,248,245,.72)}
.city-faq-grid{display:grid;grid-template-columns:1fr!important}
.city-faq-card{box-shadow:none;border-radius:18px;padding:1.1rem 1.2rem;background:rgba(255,255,255,.82)}
.city-faq-card h3{font-family:var(--font-body);font-size:1.02rem;margin-bottom:.35rem}
@media(max-width:1120px){.city-dashboard-hero-grid,.city-dashboard-split,.city-dashboard-split--comparison{grid-template-columns:1fr}.city-dashboard-visual-card{min-height:410px}.city-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.city-quick-figure-grid,.city-profile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.city-pressure-grid,.city-persona-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.city-related-visual-grid{grid-template-columns:1fr}.city-radar-layout{grid-template-columns:minmax(0,.5fr) minmax(0,1fr)}}
@media(max-width:760px){.city-dashboard-hero{padding-top:1.4rem}.city-dashboard-copy h1{max-width:none;font-size:clamp(2rem,11vw,3.1rem)}.city-dashboard-visual-card{min-height:480px}.city-dashboard-verdict-panel{left:1rem;right:1rem;top:1rem;width:auto}.city-kpi-grid,.city-quick-figure-grid,.city-profile-grid,.city-setup-timeline,.city-pressure-grid,.city-persona-grid{grid-template-columns:1fr}.city-dashboard-section-head,.city-dashboard-cta-panel{align-items:flex-start;flex-direction:column}.city-budget-bar-row{grid-template-columns:1fr;gap:.45rem}.city-budget-bar-row strong{text-align:left}.city-rent-row{grid-template-columns:1fr}.city-rent-row--head{display:none}.city-rent-row span,.city-rent-row strong{padding:.52rem .72rem}.city-rent-row strong::before{display:block;margin-bottom:.15rem;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em}.city-rent-row strong::before{content:attr(data-label)}.city-radar-layout,.city-fact-panel{grid-template-columns:1fr}.city-fact-stat-grid{grid-template-columns:1fr}.city-setup-step:not(:last-child)::after{display:none}.city-related-visual-card{grid-template-columns:92px minmax(0,1fr)}.city-related-visual-card img{width:92px}.city-dashboard-panel{padding:1.05rem;border-radius:22px}}

/* City detail infographic v2 */
.city-dashboard-hero{padding-top:2rem}
.city-dashboard-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);gap:1.65rem}
.city-dashboard-copy h1{max-width:17ch;font-size:clamp(2.35rem,4.35vw,4.15rem);line-height:1.04;letter-spacing:-.038em}
.city-hero-chip-row{display:flex;flex-wrap:wrap;gap:.5rem;margin:.15rem 0 .1rem}
.city-hero-chip{display:inline-flex;align-items:center;min-height:2.15rem;padding:.44rem .72rem;border-radius:999px;border:1px solid rgba(26,31,54,.08);background:rgba(255,255,255,.74);font-size:.86rem;font-weight:900;color:var(--text-secondary);box-shadow:0 8px 22px rgba(26,31,54,.04)}
.city-hero-chip::before{content:'';width:.48rem;height:.48rem;margin-right:.45rem;border-radius:999px;background:var(--primary)}
.city-hero-chip--high::before{background:#d94d43}.city-hero-chip--medium::before{background:#ee8b3a}.city-hero-chip--watch::before{background:#d9a236}.city-hero-chip--moderate::before,.city-hero-chip--green::before{background:#2d8f73}
.city-dashboard-visual-card{min-height:475px;background:linear-gradient(135deg,#172033,#34445d)}
.city-visual-badge-row{display:none!important}
.city-dashboard-verdict-panel--high{box-shadow:0 18px 44px rgba(217,77,67,.2)}
.city-dashboard-verdict-panel--medium{box-shadow:0 18px 44px rgba(238,139,58,.18)}
.city-dashboard-verdict-panel--moderate{box-shadow:0 18px 44px rgba(45,143,115,.16)}

.city-anchor-nav{position:sticky;top:.65rem;z-index:15;display:flex;gap:.45rem;align-items:center;overflow-x:auto;padding:.55rem;border:1px solid rgba(26,31,54,.075);border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 12px 36px rgba(26,31,54,.07);backdrop-filter:blur(16px);scrollbar-width:none}
.city-anchor-nav::-webkit-scrollbar{display:none}
.city-anchor-nav a{flex:0 0 auto;display:inline-flex;align-items:center;min-height:2.3rem;padding:.48rem .9rem;border-radius:999px;color:var(--text-secondary);font-size:.88rem;font-weight:900;transition:background .2s ease,color .2s ease,transform .2s ease}
.city-anchor-nav a:hover{background:rgba(232,96,76,.1);color:var(--primary-dark);transform:translateY(-1px)}

.city-traffic-panel{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,248,244,.9))}
.city-traffic-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.78rem}
.city-traffic-card{position:relative;min-height:12.25rem;padding:1rem;border-radius:20px;border:1px solid rgba(26,31,54,.07);background:#fff;box-shadow:0 10px 28px rgba(26,31,54,.045);overflow:hidden}
.city-traffic-card::before{content:'';position:absolute;inset:0 auto 0 0;width:.34rem;background:var(--traffic-color,#ee8b3a)}
.city-traffic-card__top{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.75rem}
.city-traffic-icon{width:2.35rem;height:2.35rem;border-radius:14px;background:rgba(232,96,76,.08);color:var(--primary)}
.city-status-pill{display:inline-flex;align-items:center;min-height:1.7rem;padding:.22rem .55rem;border-radius:999px;font-size:.72rem;line-height:1;font-weight:900;background:rgba(238,139,58,.12);color:#a85c1d}
.city-status-pill--high,.city-traffic-card--high{--traffic-color:#d94d43}.city-status-pill--high{background:rgba(217,77,67,.12);color:#a6322b}
.city-status-pill--medium,.city-traffic-card--medium{--traffic-color:#ee8b3a}.city-status-pill--medium{background:rgba(238,139,58,.14);color:#a85c1d}
.city-status-pill--watch,.city-traffic-card--watch{--traffic-color:#d9a236}.city-status-pill--watch{background:rgba(217,162,54,.14);color:#8a6414}
.city-status-pill--green,.city-traffic-card--green{--traffic-color:#2d8f73}.city-status-pill--green{background:rgba(45,143,115,.12);color:#1f6e58}
.city-traffic-card .mini-label{margin:0 0 .35rem;color:var(--muted);font-size:.74rem;letter-spacing:.04em;text-transform:uppercase}
.city-traffic-card strong{display:block;margin-bottom:.55rem;font-family:var(--font-heading);font-size:clamp(1.35rem,2vw,1.8rem);line-height:1;color:var(--text);letter-spacing:-.035em}
.city-traffic-card>span:not(.city-status-pill){display:block;margin-top:.55rem;color:var(--text-secondary);font-size:.84rem;line-height:1.36;font-weight:600}
.city-traffic-meter{height:.58rem;border-radius:999px;background:rgba(26,31,54,.08);overflow:hidden}
.city-traffic-meter span{display:block;width:var(--traffic-score,50%);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--traffic-color,#ee8b3a),#f4bb75)}

.city-kpi-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:.9rem;align-items:stretch}
.city-kpi-primary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.city-kpi-secondary-grid{display:grid;grid-template-columns:1fr;gap:.75rem}
.city-kpi-card--primary{min-height:13.5rem;padding:1.15rem;background:linear-gradient(180deg,#fff,rgba(255,245,242,.74))}
.city-kpi-card--primary::before{content:'';position:absolute;left:0;right:0;top:0;height:.32rem;background:linear-gradient(90deg,var(--primary),#f59b5c)}
.city-kpi-card--primary strong{font-size:clamp(1.65rem,2.8vw,2.35rem)}
.city-kpi-card--secondary{min-height:6.35rem;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:.75rem;align-items:start;padding:.82rem .92rem;background:rgba(250,248,245,.64)}
.city-kpi-card--secondary .city-kpi-icon{grid-row:1/4}
.city-kpi-card--secondary .mini-label{min-height:0;margin:0 0 .18rem}
.city-kpi-card--secondary strong{font-family:var(--font-body);font-size:1.25rem;letter-spacing:-.025em}
.city-kpi-card--secondary span:not(.icon-badge){font-size:.82rem}

.city-budget-icon{flex:0 0 auto;width:2.15rem;height:2.15rem;border-radius:12px;background:rgba(232,96,76,.08);color:var(--primary)}
.city-budget-bar-row{grid-template-columns:minmax(190px,1.04fr) minmax(170px,1.28fr) minmax(110px,.42fr);gap:.9rem;padding:.68rem 0}
.city-budget-bar-label{display:flex;align-items:center;gap:.65rem;min-width:0}
.city-budget-bar-title{display:block;color:var(--text);font-weight:900;font-size:.95rem;line-height:1.2}
.city-budget-bar-label small{font-size:.78rem}
.city-budget-bar-track{height:.95rem;background:rgba(26,31,54,.075)}
.city-budget-bar-row--high .city-budget-bar-track span{background:linear-gradient(90deg,#d94d43,#f1765f)}
.city-budget-bar-row--medium .city-budget-bar-track span{background:linear-gradient(90deg,#ee8b3a,#f2b366)}
.city-budget-bar-row--watch .city-budget-bar-track span{background:linear-gradient(90deg,#d9a236,#f0c46d)}
.city-budget-bar-row--green .city-budget-bar-track span{background:linear-gradient(90deg,#2d8f73,#69b79d)}
.city-budget-bar-value{text-align:right}
.city-budget-bar-value strong{display:block;font-size:.95rem;color:var(--text)}
.city-budget-bar-value span{display:block;margin-top:.12rem;color:var(--muted);font-size:.78rem;font-weight:900}
.city-budget-insight-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:1rem}
.city-budget-insight{padding:1rem;border-radius:18px;border:1px solid rgba(26,31,54,.065);background:rgba(250,248,245,.72)}
.city-budget-insight span{display:block;margin-bottom:.25rem;color:var(--muted);font-size:.74rem;text-transform:uppercase;letter-spacing:.06em;font-weight:900}
.city-budget-insight strong{display:block;margin-bottom:.22rem;font-size:1.08rem;line-height:1.2;color:var(--text)}
.city-budget-insight p{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.42}
.city-budget-insight--rent{background:linear-gradient(135deg,rgba(255,240,235,.92),rgba(255,255,255,.82));border-color:rgba(232,96,76,.15)}
.city-budget-insight--total{background:linear-gradient(135deg,rgba(45,106,90,.09),rgba(255,255,255,.84));border-color:rgba(45,106,90,.12)}

.city-rent-mode-pills{display:inline-flex;gap:.35rem;margin-bottom:.85rem;padding:.28rem;border:1px solid rgba(26,31,54,.07);border-radius:999px;background:rgba(250,248,245,.82)}
.city-rent-mode-pills span{padding:.36rem .72rem;border-radius:999px;font-size:.8rem;font-weight:900;color:var(--text-secondary)}
.city-rent-mode-pills span:first-child{background:#fff;color:var(--text);box-shadow:0 6px 18px rgba(26,31,54,.06)}
.city-rent-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.72rem}
.city-rent-card{padding:.9rem;border-radius:18px;border:1px solid rgba(26,31,54,.06);background:rgba(255,255,255,.78)}
.city-rent-card h3{margin:0 0 .65rem;font-family:var(--font-body);font-size:.98rem;letter-spacing:-.01em}
.city-rent-card__prices{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}
.city-rent-card__prices div{padding:.62rem;border-radius:14px;background:rgba(250,248,245,.82)}
.city-rent-card__prices span{display:block;margin-bottom:.18rem;color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.city-rent-card__prices strong{font-size:.98rem;letter-spacing:-.02em;color:var(--text)}
.city-rent-card p{margin:.58rem 0 0;color:var(--text-secondary);font-size:.82rem;line-height:1.36}
.city-soft-note--warning{background:rgba(232,96,76,.08);border:1px solid rgba(232,96,76,.12);color:var(--text-secondary)}

.city-budget-reason-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}
.city-budget-reason-card{position:relative;min-height:13.2rem;padding:1rem;border-radius:20px;border:1px solid rgba(26,31,54,.065);background:linear-gradient(180deg,#fff,rgba(250,248,245,.72));overflow:hidden}
.city-budget-reason-card::after{content:'';position:absolute;right:-2.4rem;top:-2.4rem;width:7.5rem;height:7.5rem;border-radius:999px;background:rgba(232,96,76,.08)}
.city-reason-rank{position:absolute;right:.85rem;top:.75rem;z-index:1;display:grid;place-items:center;width:2rem;height:2rem;border-radius:999px;background:rgba(232,96,76,.1);color:var(--primary-dark);font-weight:900}
.city-reason-icon{width:2.4rem;height:2.4rem;border-radius:14px;background:rgba(232,96,76,.08);color:var(--primary)}
.city-budget-reason-card h3{margin:.8rem 0 .35rem;font-family:var(--font-body);font-size:1.04rem;letter-spacing:-.015em}
.city-budget-reason-card p{margin:0 0 .75rem;color:var(--text-secondary);font-size:.9rem;line-height:1.42}
.city-budget-reason-card strong{display:inline-flex;align-items:center;min-height:2rem;padding:.32rem .55rem;border-radius:999px;background:rgba(26,31,54,.055);font-size:.9rem;color:var(--text)}
.city-dashboard-cta-panel--light{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,243,238,.92));color:var(--text);border:1px solid rgba(232,96,76,.12);box-shadow:0 16px 42px rgba(232,96,76,.08)}
.city-dashboard-cta-panel--light h2{color:var(--text)}
.city-dashboard-cta-panel--light p{color:var(--text-secondary)}
.city-dashboard-cta-panel--light .panel-label{color:var(--primary-dark)}

.city-district-panel{overflow:hidden}
.city-district-map-card{position:relative;min-height:8.2rem;margin-bottom:.85rem;border-radius:22px;background:radial-gradient(circle at 20% 20%,rgba(232,96,76,.18),transparent 5rem),radial-gradient(circle at 75% 35%,rgba(45,106,90,.16),transparent 5rem),linear-gradient(135deg,rgba(250,248,245,.92),rgba(255,255,255,.8));border:1px solid rgba(26,31,54,.065);overflow:hidden}
.city-district-map-card span{position:absolute;border-radius:999px;background:rgba(26,31,54,.09)}
.city-district-map-card span:nth-child(1){left:8%;right:18%;top:32%;height:.65rem;transform:rotate(-4deg)}
.city-district-map-card span:nth-child(2){left:24%;right:10%;top:58%;height:.55rem;transform:rotate(6deg)}
.city-district-map-card span:nth-child(3){top:12%;bottom:14%;left:37%;width:.55rem;transform:rotate(12deg)}
.city-district-map-card span:nth-child(4){top:18%;bottom:10%;left:63%;width:.5rem;transform:rotate(-10deg)}
.city-district-map-card strong{position:absolute;left:1.1rem;bottom:1rem;display:inline-flex;padding:.45rem .72rem;border-radius:999px;background:#fff;box-shadow:0 10px 24px rgba(26,31,54,.08);font-size:.95rem}
.city-district-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.78rem}
.city-district-card{padding:1rem;border-radius:18px;border:1px solid rgba(26,31,54,.06);background:rgba(255,255,255,.78)}
.city-district-icon{width:2.25rem;height:2.25rem;border-radius:13px;background:rgba(45,106,90,.08);color:var(--accent)}
.city-district-card h3{margin:.65rem 0 .3rem;font-family:var(--font-body);font-size:1rem;letter-spacing:-.015em}
.city-district-card p{margin:0;color:var(--text-secondary);font-size:.88rem;line-height:1.42}

.city-radar-summary{margin-top:1rem;padding:1rem;border-radius:18px;background:rgba(250,248,245,.82);border:1px solid rgba(26,31,54,.06)}
.city-radar-summary p{margin:0 0 .75rem;color:var(--text-secondary);font-size:.95rem;line-height:1.45}
.city-radar-chip-row{display:flex;flex-wrap:wrap;gap:.45rem}
.city-radar-chip-row span{display:inline-flex;align-items:center;min-height:1.9rem;padding:.32rem .6rem;border-radius:999px;background:#fff;border:1px solid rgba(26,31,54,.06);font-size:.8rem;font-weight:900;color:var(--text-secondary)}
.city-setup-timeline{grid-template-columns:repeat(4,minmax(0,1fr))}
.city-setup-step--total{background:linear-gradient(135deg,var(--primary),#d4503e);border-color:transparent;color:#fff;box-shadow:0 16px 38px rgba(232,96,76,.22)}
.city-setup-step--total .city-step-number{background:rgba(255,255,255,.22);color:#fff}
.city-setup-step--total h3,.city-setup-step--total strong{color:#fff}
.city-setup-step--total p{margin:.2rem 0 .8rem;color:rgba(255,255,255,.8);font-size:.9rem;line-height:1.38}
.city-setup-step--total::after{display:none}

.city-detail-main-section .info-card{border-radius:22px;border-color:rgba(26,31,54,.065);box-shadow:0 10px 28px rgba(26,31,54,.04)}
.city-detail-main-section .subsection-block{padding-top:1.35rem}
.city-detail-main-section .section-header{margin-bottom:.85rem}
.city-detail-main-section .city-analysis-card--primary{background:linear-gradient(180deg,#fff,rgba(250,248,245,.75))}
.city-reference-details{box-shadow:0 10px 28px rgba(26,31,54,.04)}

@media(max-width:1180px){
  .city-dashboard-hero-grid,.city-dashboard-split,.city-dashboard-split--comparison{grid-template-columns:1fr}
  .city-dashboard-visual-card{min-height:430px}
  .city-traffic-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .city-kpi-layout{grid-template-columns:1fr}
  .city-kpi-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .city-budget-reason-grid,.city-district-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .city-setup-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}
  .city-setup-step:not(:last-child)::after{display:none}
}
@media(max-width:760px){
  .city-dashboard-hero{padding-top:1.25rem}
  .city-dashboard-hero-grid{grid-template-columns:minmax(0,1fr);gap:1rem}
  .city-dashboard-copy{padding:.35rem 0 .2rem}
  .city-dashboard-visual-card{min-height:420px;border-radius:22px}
  .city-dashboard-verdict-panel{left:.85rem;right:.85rem;top:.85rem;width:auto;padding:1rem;border-radius:18px}
  .city-dashboard-location-pill{left:.85rem;right:.85rem;bottom:.85rem;max-width:none}
  .city-dashboard-panel{padding:1rem;border-radius:20px}
  .city-dashboard-section-head{align-items:flex-start;flex-direction:column;gap:.55rem}
  .city-dashboard-section-head .section-intro{max-width:none}
  .city-dashboard-cta-panel{align-items:stretch;flex-direction:column;padding:1.15rem;border-radius:22px}
  .city-dashboard-cta-panel .button{width:100%}
  .city-dashboard-meta-row span{max-width:100%;white-space:normal}
  .city-dashboard-hero-grid{gap:1rem}
  .city-dashboard-copy h1{max-width:none;font-size:clamp(2rem,10vw,3rem);line-height:1.07}
  .city-anchor-nav{top:.5rem;margin-inline:-.35rem;border-radius:18px}
  .city-anchor-nav a{min-height:2.15rem;padding:.42rem .75rem;font-size:.82rem}
  .city-traffic-grid,.city-kpi-primary-grid,.city-kpi-secondary-grid,.city-rent-card-grid,.city-budget-reason-grid,.city-district-grid,.city-setup-timeline{grid-template-columns:1fr}
  .city-traffic-card{min-height:auto}
  .city-kpi-card--secondary{grid-template-columns:auto minmax(0,1fr)}
  .city-budget-insight-grid{grid-template-columns:1fr}
  .city-rent-card__prices{grid-template-columns:1fr}
  .city-district-map-card{min-height:6.8rem}
}


/* Mobile safety rails for the city detail dashboard. */
.city-dashboard-hero,.city-dashboard-panel,.city-dashboard-visual-card,.city-kpi-card,.city-traffic-card,.city-rent-card,.city-budget-reason-card,.city-district-card{box-sizing:border-box;max-width:100%}
.city-dashboard-hero-grid,.city-kpi-layout,.city-kpi-primary-grid,.city-kpi-secondary-grid,.city-traffic-grid,.city-quick-figure-grid,.city-budget-reason-grid,.city-district-grid,.city-setup-timeline{min-width:0}
.city-dashboard-hero-grid>*,.city-kpi-layout>*,.city-kpi-primary-grid>*,.city-kpi-secondary-grid>*,.city-traffic-grid>*,.city-quick-figure-grid>*,.city-budget-reason-grid>*,.city-district-grid>*,.city-setup-timeline>*{min-width:0}

/* City detail mobile repair, 2026-05-04 */
body.route-city-detail {
  overflow-x: hidden;
}

body.route-city-detail .city-visual-badge-row {
  display: none !important;
}

body.route-city-detail .site-wrapper,
body.route-city-detail #site-content,
body.route-city-detail .page-hero,
body.route-city-detail .content-section,
body.route-city-detail .container {
  max-width: 100%;
  min-width: 0;
}

body.route-city-detail .city-dashboard-hero-grid,
body.route-city-detail .city-dashboard-split,
body.route-city-detail .city-dashboard-split--comparison,
body.route-city-detail .city-kpi-layout,
body.route-city-detail .city-traffic-grid,
body.route-city-detail .city-kpi-primary-grid,
body.route-city-detail .city-kpi-secondary-grid,
body.route-city-detail .city-quick-figure-grid,
body.route-city-detail .city-budget-reason-grid,
body.route-city-detail .city-district-grid,
body.route-city-detail .city-profile-grid,
body.route-city-detail .city-radar-layout,
body.route-city-detail .city-fact-panel,
body.route-city-detail .city-fact-stat-grid,
body.route-city-detail .city-setup-timeline,
body.route-city-detail .city-pressure-grid,
body.route-city-detail .city-persona-grid,
body.route-city-detail .city-related-visual-grid,
body.route-city-detail .city-analysis-grid,
body.route-city-detail .city-summary-grid,
body.route-city-detail .city-salary-grid,
body.route-city-detail .city-route-grid,
body.route-city-detail .city-related-grid,
body.route-city-detail .city-tool-grid,
body.route-city-detail .city-next-steps-grid,
body.route-city-detail .city-faq-grid,
body.route-city-detail .city-card-detail-grid,
body.route-city-detail .city-signal-grid,
body.route-city-detail .city-profile-related-grid {
  max-width: 100%;
  min-width: 0;
}

body.route-city-detail .city-dashboard-hero-grid > *,
body.route-city-detail .city-dashboard-split > *,
body.route-city-detail .city-dashboard-split--comparison > *,
body.route-city-detail .city-kpi-layout > *,
body.route-city-detail .city-traffic-grid > *,
body.route-city-detail .city-kpi-primary-grid > *,
body.route-city-detail .city-kpi-secondary-grid > *,
body.route-city-detail .city-quick-figure-grid > *,
body.route-city-detail .city-budget-reason-grid > *,
body.route-city-detail .city-district-grid > *,
body.route-city-detail .city-profile-grid > *,
body.route-city-detail .city-radar-layout > *,
body.route-city-detail .city-fact-panel > *,
body.route-city-detail .city-fact-stat-grid > *,
body.route-city-detail .city-setup-timeline > *,
body.route-city-detail .city-pressure-grid > *,
body.route-city-detail .city-persona-grid > *,
body.route-city-detail .city-related-visual-grid > *,
body.route-city-detail .city-analysis-grid > *,
body.route-city-detail .city-summary-grid > *,
body.route-city-detail .city-salary-grid > *,
body.route-city-detail .city-route-grid > *,
body.route-city-detail .city-related-grid > *,
body.route-city-detail .city-tool-grid > *,
body.route-city-detail .city-next-steps-grid > *,
body.route-city-detail .city-faq-grid > *,
body.route-city-detail .city-card-detail-grid > *,
body.route-city-detail .city-signal-grid > *,
body.route-city-detail .city-profile-related-grid > * {
  min-width: 0;
  max-width: 100%;
}

body.route-city-detail .city-dashboard-panel,
body.route-city-detail .city-dashboard-visual-card,
body.route-city-detail .city-dashboard-cta-panel,
body.route-city-detail .city-traffic-card,
body.route-city-detail .city-kpi-card,
body.route-city-detail .city-quick-figure,
body.route-city-detail .city-rent-card,
body.route-city-detail .city-budget-reason-card,
body.route-city-detail .city-district-card,
body.route-city-detail .city-profile-item,
body.route-city-detail .city-setup-step,
body.route-city-detail .city-pressure-card,
body.route-city-detail .city-persona-card,
body.route-city-detail .city-related-visual-card,
body.route-city-detail .info-card,
body.route-city-detail .subtle-card,
body.route-city-detail .data-card {
  box-sizing: border-box;
  max-width: 100%;
  min-width: 0;
}

body.route-city-detail .city-dashboard-copy h1,
body.route-city-detail .city-dashboard-section-head h2,
body.route-city-detail .city-dashboard-panel h2,
body.route-city-detail .city-dashboard-panel h3,
body.route-city-detail .city-dashboard-panel p,
body.route-city-detail .city-dashboard-panel span,
body.route-city-detail .city-dashboard-panel strong {
  overflow-wrap: anywhere;
}

body.route-city-detail .city-dashboard-photo,
body.route-city-detail .city-fact-media img,
body.route-city-detail .city-related-visual-card img,
body.route-city-detail .city-radar-chart {
  max-width: 100%;
}

body.route-city-detail .city-radar-chart circle {
  fill: none !important;
  stroke: rgba(26, 31, 54, .11) !important;
  stroke-width: 1 !important;
}

body.route-city-detail .city-radar-chart line {
  fill: none !important;
  stroke: rgba(26, 31, 54, .11) !important;
  stroke-width: 1 !important;
}

body.route-city-detail .city-radar-baseline {
  fill: rgba(26, 31, 54, .07) !important;
  stroke: rgba(26, 31, 54, .25) !important;
  stroke-width: 1.5 !important;
}

body.route-city-detail .city-radar-current {
  fill: rgba(232, 96, 76, .22) !important;
  stroke: var(--primary) !important;
  stroke-width: 2.5 !important;
}

@media (max-width: 1180px) {
  body.route-city-detail .city-dashboard-hero-grid,
  body.route-city-detail .city-dashboard-split,
  body.route-city-detail .city-dashboard-split--comparison,
  body.route-city-detail .city-kpi-layout,
  body.route-city-detail .city-radar-layout,
  body.route-city-detail .city-fact-panel {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

@media (max-width: 760px) {
  body.route-city-detail .container {
    width: min(calc(100% - 1rem), var(--container));
  }

  body.route-city-detail .city-dashboard-hero {
    padding-top: 1.15rem;
  }

  body.route-city-detail .city-dashboard-hero .container {
    gap: .95rem;
  }

  body.route-city-detail .city-dashboard-copy {
    padding: .25rem 0;
  }

  body.route-city-detail .city-dashboard-copy h1 {
    max-width: none;
    font-size: clamp(1.82rem, 9.4vw, 2.55rem);
    line-height: 1.08;
  }

  body.route-city-detail .city-page-description {
    font-size: .98rem;
    line-height: 1.58;
  }

  body.route-city-detail .city-hero-chip-row,
  body.route-city-detail .city-dashboard-meta-row,
  body.route-city-detail .hero-actions,
  body.route-city-detail .city-hero-actions {
    max-width: 100%;
  }

  body.route-city-detail .city-hero-chip {
    min-width: 0;
    max-width: 100%;
    white-space: normal;
  }

  body.route-city-detail .city-hero-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
  }

  body.route-city-detail .city-hero-actions .button,
  body.route-city-detail .city-dashboard-cta-panel .button {
    width: 100%;
  }

  body.route-city-detail .city-dashboard-visual-card {
    display: grid;
    min-height: 0 !important;
    border-radius: 22px;
  }

  body.route-city-detail .city-dashboard-photo-wrap {
    position: relative;
    inset: auto;
    height: 210px;
  }

  body.route-city-detail .city-dashboard-verdict-panel {
    position: relative;
    inset: auto;
    width: auto;
    margin: 0;
    border-radius: 0 0 22px 22px;
    box-shadow: none;
  }

  body.route-city-detail .city-dashboard-location-pill {
    left: .75rem;
    right: .75rem;
    bottom: .75rem;
    max-width: none;
  }

  body.route-city-detail .city-anchor-nav {
    max-width: 100%;
    margin-inline: 0;
    border-radius: 18px;
  }

  body.route-city-detail .city-dashboard-hero-grid,
  body.route-city-detail .city-dashboard-split,
  body.route-city-detail .city-dashboard-split--comparison,
  body.route-city-detail .city-kpi-layout,
  body.route-city-detail .city-traffic-grid,
  body.route-city-detail .city-kpi-primary-grid,
  body.route-city-detail .city-kpi-secondary-grid,
  body.route-city-detail .city-quick-figure-grid,
  body.route-city-detail .city-rent-card-grid,
  body.route-city-detail .city-budget-insight-grid,
  body.route-city-detail .city-budget-reason-grid,
  body.route-city-detail .city-district-grid,
  body.route-city-detail .city-profile-grid,
  body.route-city-detail .city-radar-layout,
  body.route-city-detail .city-fact-panel,
  body.route-city-detail .city-fact-stat-grid,
  body.route-city-detail .city-setup-timeline,
  body.route-city-detail .city-pressure-grid,
  body.route-city-detail .city-persona-grid,
  body.route-city-detail .city-related-visual-grid,
  body.route-city-detail .city-analysis-grid,
  body.route-city-detail .city-summary-grid,
  body.route-city-detail .city-salary-grid,
  body.route-city-detail .city-route-grid,
  body.route-city-detail .city-related-grid,
  body.route-city-detail .city-tool-grid,
  body.route-city-detail .city-next-steps-grid,
  body.route-city-detail .city-faq-grid,
  body.route-city-detail .city-card-detail-grid,
  body.route-city-detail .city-signal-grid,
  body.route-city-detail .city-profile-related-grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.route-city-detail .city-dashboard-panel {
    width: 100%;
    padding: 1rem;
    border-radius: 20px;
    overflow: hidden;
  }

  body.route-city-detail .city-dashboard-section-head,
  body.route-city-detail .city-dashboard-cta-panel {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: .7rem;
  }

  body.route-city-detail .city-total-badge,
  body.route-city-detail .city-total-badge--strong {
    justify-content: flex-start;
    width: 100%;
    white-space: normal;
  }

  body.route-city-detail .city-budget-bar-row {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .45rem;
  }

  body.route-city-detail .city-budget-bar-label {
    align-items: flex-start;
  }

  body.route-city-detail .city-budget-bar-value,
  body.route-city-detail .city-budget-bar-row strong {
    text-align: left;
  }

  body.route-city-detail .city-rent-mode-pills {
    width: 100%;
    overflow-x: auto;
    border-radius: 18px;
  }

  body.route-city-detail .city-rent-card__prices,
  body.route-city-detail .city-rent-row {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.route-city-detail .city-radar-chart {
    width: min(220px, 100%);
    justify-self: center;
  }

  body.route-city-detail .city-radar-score-row {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: .35rem;
  }

  body.route-city-detail .city-related-visual-card {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.route-city-detail .city-related-visual-card img {
    width: 100%;
    height: 150px;
    min-height: 0;
  }

  body.route-city-detail .city-dashboard-cta-panel::after,
  body.route-city-detail .city-setup-step:not(:last-child)::after {
    display: none;
  }

  body.route-city-detail .data-table,
  body.route-city-detail table {
    max-width: 100%;
  }
}
/* Homepage premium relocation-finance redesign */
.home-v2-hero,
.home-v2-section{
    position:relative;
    overflow:hidden;
}

.home-v2-hero{
    padding:clamp(3rem,6vw,6.2rem) 0 2.35rem;
    background:
        radial-gradient(circle at 10% 16%, rgba(232,96,76,.12), transparent 28rem),
        radial-gradient(circle at 85% 8%, rgba(48,141,157,.12), transparent 30rem),
        linear-gradient(180deg, rgba(255,250,244,.96), rgba(255,255,255,.98) 72%, rgba(250,247,241,.92));
}

.home-v2-hero__grid{
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(420px,1.08fr);
    gap:clamp(1.8rem,4vw,4rem);
    align-items:center;
}

.home-v2-hero__copy{
    display:grid;
    gap:1.2rem;
    align-content:center;
}

.home-v2-eyebrow{
    display:inline-flex;
    width:max-content;
    max-width:100%;
    padding:.42rem .72rem;
    border-radius:999px;
    border:1px solid rgba(232,96,76,.15);
    background:rgba(255,244,238,.85);
    color:var(--primary);
    letter-spacing:.07em;
}

.home-v2-hero h1{
    max-width:12ch;
    margin:0;
    font-size:clamp(2.55rem,5.25vw,5.05rem);
    line-height:.98;
    letter-spacing:-.055em;
}

.home-v2-hero__lead{
    max-width:45rem;
    margin:0;
    color:var(--text-secondary);
    font-size:clamp(1rem,1.25vw,1.14rem);
    line-height:1.72;
}

.home-v2-actions,
.home-v2-center-action{
    display:flex;
    flex-wrap:wrap;
    gap:.8rem;
    align-items:center;
}

.home-v2-trust-row{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.7rem;
    margin-top:.35rem;
}

.home-v2-trust-row span{
    display:flex;
    align-items:center;
    min-height:3.05rem;
    padding:.72rem .85rem;
    border:1px solid rgba(26,31,54,.07);
    border-radius:1rem;
    background:rgba(255,255,255,.78);
    box-shadow:0 10px 24px rgba(26,31,54,.04);
    color:var(--text-secondary);
    font-size:.88rem;
    font-weight:750;
    line-height:1.35;
}

.home-v2-trust-row span::before{
    content:'';
    width:.58rem;
    height:.58rem;
    margin-right:.52rem;
    border-radius:50%;
    background:linear-gradient(135deg,#2d6a5a,#75c9ae);
    box-shadow:0 0 0 .24rem rgba(45,106,90,.10);
    flex:0 0 auto;
}

.home-v2-hero__visual{
    position:relative;
    min-width:0;
}

.home-v2-hero__visual::before{
    content:'';
    position:absolute;
    inset:7% 2% 1% 6%;
    border-radius:2rem;
    background:linear-gradient(135deg,rgba(255,255,255,.82),rgba(255,242,232,.64));
    box-shadow:0 30px 90px rgba(26,31,54,.10);
    transform:rotate(-1.8deg);
}

.home-v2-hero__visual picture,
.home-v2-hero__visual img{
    position:relative;
    z-index:1;
    display:block;
    width:100%;
}

.home-v2-hero__visual img{
    height:auto;
    filter:drop-shadow(0 22px 34px rgba(26,31,54,.10));
}

.home-v2-section{
    padding:clamp(2.2rem,5vw,4.6rem) 0;
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,247,241,.92));
}

.home-v2-section--tools,
.home-v2-section--audience,
.home-v2-section--lead{
    background:linear-gradient(180deg,rgba(250,247,241,.92),rgba(255,255,255,.98));
}

.home-v2-stack{
    display:grid;
    gap:1.55rem;
}

.home-v2-section-head{
    display:grid;
    gap:.45rem;
    max-width:52rem;
}

.home-v2-section-head--center{
    margin:0 auto;
    text-align:center;
    justify-items:center;
}

.home-v2-section-head h2,
.home-v2-section--solve h2{
    margin:0;
    font-size:clamp(1.8rem,3.2vw,3rem);
    line-height:1.05;
    letter-spacing:-.04em;
}

.home-v2-section-head p{
    margin:0;
    color:var(--text-secondary);
    font-size:1rem;
    line-height:1.65;
}

.home-v2-solve-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1rem;
    margin-top:1.25rem;
}

.home-v2-solve-card{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:.8rem;
    min-height:8rem;
    padding:1rem;
    border:1px solid rgba(26,31,54,.07);
    border-radius:1.25rem;
    background:rgba(255,255,255,.92);
    box-shadow:0 14px 36px rgba(26,31,54,.05);
}

.home-v2-solve-card > span{
    display:grid;
    place-items:center;
    width:2.6rem;
    height:2.6rem;
    border-radius:.9rem;
    background:linear-gradient(135deg,rgba(232,96,76,.13),rgba(245,158,11,.12));
    color:var(--primary);
    font-weight:900;
}

.home-v2-solve-card h3,
.home-v2-tool-card h3,
.home-v2-audience-card h3,
.home-v2-faq-item summary{
    margin:0;
    font-size:1.02rem;
    line-height:1.28;
}

.home-v2-solve-card p,
.home-v2-tool-card p,
.home-v2-audience-card p{
    margin:.35rem 0 0;
    color:var(--text-secondary);
    line-height:1.55;
}

.home-v2-tools-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1rem;
}

.home-v2-tool-card{
    display:grid;
    grid-template-rows:auto auto 1fr auto;
    gap:.65rem;
    min-height:100%;
    padding:1.1rem;
    border:1px solid rgba(26,31,54,.08);
    border-radius:1.45rem;
    background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,252,248,.96));
    box-shadow:0 18px 42px rgba(26,31,54,.07);
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.home-v2-tool-card:hover{
    transform:translateY(-3px);
    border-color:rgba(232,96,76,.18);
    box-shadow:0 26px 56px rgba(26,31,54,.10);
}

.home-v2-tool-card img{
    display:block;
    width:100%;
    aspect-ratio:1.25;
    object-fit:contain;
    border-radius:1rem;
    background:linear-gradient(180deg,rgba(255,247,241,.72),rgba(255,255,255,.86));
}

.home-v2-tool-card a{
    display:inline-flex;
    align-items:center;
    gap:.35rem;
    width:max-content;
    margin-top:.35rem;
    color:var(--primary);
    font-weight:850;
    text-decoration:none;
}

.home-v2-center-action{
    justify-content:center;
}

.home-v2-section--process{
    background:
        radial-gradient(circle at 8% 30%,rgba(45,106,90,.08),transparent 24rem),
        linear-gradient(180deg,rgba(255,255,255,.98),rgba(250,247,241,.92));
}

.home-v2-process-line{
    position:relative;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:1rem;
}

.home-v2-process-line::before{
    content:'';
    position:absolute;
    left:7%;
    right:7%;
    top:4.15rem;
    border-top:2px dashed rgba(112,141,183,.32);
}

.home-v2-step-card{
    position:relative;
    z-index:1;
    display:grid;
    justify-items:center;
    gap:.55rem;
    padding:1rem .75rem;
    text-align:center;
}

.home-v2-step-number{
    display:grid;
    place-items:center;
    width:2rem;
    height:2rem;
    border-radius:999px;
    background:var(--primary);
    color:#fff;
    font-size:.82rem;
    font-weight:900;
    box-shadow:0 8px 20px rgba(232,96,76,.22);
}

.home-v2-step-card img{
    width:5rem;
    height:5rem;
    object-fit:contain;
    border-radius:50%;
    background:rgba(255,255,255,.9);
    box-shadow:0 14px 30px rgba(26,31,54,.08);
}

.home-v2-step-card h3{
    margin:0;
    font-size:.98rem;
    line-height:1.3;
}

.home-v2-insights-shell{
    padding:clamp(1.1rem,2.2vw,1.55rem);
    border:1px solid rgba(112,141,183,.14);
    border-radius:1.8rem;
    background:
        radial-gradient(circle at 100% 0%,rgba(232,96,76,.08),transparent 24rem),
        linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,249,255,.95));
    box-shadow:0 22px 56px rgba(26,31,54,.08);
}

.home-v2-insight-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:1rem;
    margin-top:1.15rem;
}

.home-v2-insight-card{
    min-height:14.5rem;
    padding:1.05rem;
    border:1px solid rgba(26,31,54,.07);
    border-radius:1.25rem;
    background:rgba(255,255,255,.94);
    box-shadow:0 12px 28px rgba(15,23,42,.04);
}

.home-v2-insight-card strong{
    display:block;
    margin:.35rem 0 .65rem;
    font-size:1.55rem;
    line-height:1;
    letter-spacing:-.035em;
}

.home-v2-good{
    color:#249464;
}

.home-v2-donut{
    width:7rem;
    height:7rem;
    margin:.7rem auto;
    border-radius:50%;
    background:conic-gradient(#2d6a5a 0 36%, #4f6f9a 36% 50%, #f59e0b 50% 68%, #dbe5f2 68% 100%);
    box-shadow:inset 0 0 0 1.28rem #fff, 0 12px 24px rgba(15,23,42,.08);
}

.home-v2-budget-card ul{
    display:grid;
    gap:.25rem;
    margin:.65rem 0 0;
    padding:0;
    list-style:none;
    color:var(--text-secondary);
    font-size:.88rem;
}

.home-v2-budget-card li{
    display:flex;
    justify-content:space-between;
    gap:.75rem;
}

.home-v2-bar{
    position:relative;
    margin:.8rem 0;
    padding-top:1.35rem;
}

.home-v2-bar span{
    display:block;
    height:.72rem;
    border-radius:999px;
    background:linear-gradient(90deg,#2d6a5a,#55b99a);
}

.home-v2-bar--muted span{
    background:linear-gradient(90deg,#a9b8cc,#d3dce8);
}

.home-v2-bar b{
    position:absolute;
    left:0;
    top:0;
    font-size:.82rem;
    color:var(--text-secondary);
}

.home-v2-city-row{
    display:grid;
    grid-template-columns:minmax(6rem,.8fr) minmax(0,1fr);
    gap:.7rem;
    align-items:center;
    margin:.72rem 0;
    color:var(--text-secondary);
    font-size:.9rem;
}

.home-v2-city-row i,
.home-v2-reserve{
    display:block;
    height:.62rem;
    border-radius:999px;
    background:rgba(112,141,183,.14);
    overflow:hidden;
}

.home-v2-city-row em,
.home-v2-reserve span{
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#4f6f9a,#9bb7f2);
}

.home-v2-reserve span{
    background:linear-gradient(90deg,#2d6a5a,#55b99a);
}

.home-v2-insight-card p,
.home-v2-insight-card small{
    color:var(--text-secondary);
    line-height:1.5;
}

.home-v2-audience-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:1rem;
}

.home-v2-audience-card{
    display:grid;
    grid-template-columns:minmax(120px,.6fr) minmax(0,1fr);
    gap:1rem;
    align-items:center;
    min-height:12rem;
    padding:1rem;
    border:1px solid rgba(26,31,54,.08);
    border-radius:1.45rem;
    background:rgba(255,255,255,.94);
    box-shadow:0 16px 38px rgba(26,31,54,.06);
}

.home-v2-audience-card img{
    width:100%;
    max-height:11rem;
    object-fit:contain;
    border-radius:1rem;
    background:linear-gradient(180deg,rgba(255,247,241,.7),rgba(255,255,255,.86));
}

.home-v2-faq-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.8rem 1rem;
}

.home-v2-faq-item{
    border:1px solid rgba(26,31,54,.08);
    border-radius:1rem;
    background:rgba(255,255,255,.94);
    box-shadow:0 10px 24px rgba(26,31,54,.035);
    overflow:hidden;
}

.home-v2-faq-item summary{
    position:relative;
    display:flex;
    justify-content:space-between;
    gap:1rem;
    align-items:center;
    padding:1rem 1.05rem;
    cursor:pointer;
    list-style:none;
}

.home-v2-faq-item summary::-webkit-details-marker{
    display:none;
}

.home-v2-faq-item summary::after{
    content:'+';
    display:grid;
    place-items:center;
    width:1.7rem;
    height:1.7rem;
    border-radius:999px;
    background:rgba(246,249,255,.95);
    color:#4f6f9a;
    flex:0 0 auto;
}

.home-v2-faq-item[open] summary::after{
    content:'−';
}

.home-v2-faq-item p{
    margin:0;
    padding:0 1.05rem 1rem;
    color:var(--text-secondary);
    line-height:1.58;
}

.home-v2-section--lead{
    padding-bottom:clamp(1.6rem,4vw,3.2rem);
}

.home-v2-lead-shell{
    display:grid;
    grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);
    gap:1rem;
    padding:clamp(1rem,2.2vw,1.45rem);
    border:1px solid rgba(232,96,76,.14);
    border-radius:1.8rem;
    background:
        radial-gradient(circle at 0% 100%,rgba(45,106,90,.10),transparent 18rem),
        linear-gradient(135deg,rgba(255,238,226,.98),rgba(255,251,247,.96));
    box-shadow:0 24px 58px rgba(26,31,54,.09);
}

.home-v2-lead-copy{
    display:grid;
    align-content:center;
    gap:1rem;
}

.home-v2-lead-copy img{
    width:min(100%,20rem);
    height:auto;
    object-fit:contain;
}

.home-v2-lead-copy h2{
    margin:.2rem 0 .45rem;
    font-size:clamp(1.8rem,3vw,2.75rem);
    line-height:1.05;
    letter-spacing:-.04em;
}

.home-v2-lead-copy p:not(.eyebrow){
    margin:0;
    color:var(--text-secondary);
    line-height:1.65;
}

.home-v2-lead-benefits{
    display:flex;
    flex-wrap:wrap;
    gap:.55rem;
    margin-top:.9rem;
}

.home-v2-lead-benefits span{
    display:inline-flex;
    align-items:center;
    min-height:2rem;
    padding:.42rem .72rem;
    border-radius:999px;
    background:rgba(255,255,255,.78);
    border:1px solid rgba(26,31,54,.07);
    color:var(--text-secondary);
    font-size:.82rem;
    font-weight:750;
}

.home-v2-lead-form .lead-assist-card{
    margin:0;
    border-radius:1.35rem;
    background:rgba(255,255,255,.94);
    box-shadow:0 16px 34px rgba(15,23,42,.07);
}

.home-v2-lead-form .lead-assist-card__header{
    grid-template-columns:minmax(0,1fr) minmax(180px,.42fr);
}

.home-v2-lead-form .lead-assist-card__intro h2,
.home-v2-lead-form .lead-assist-card__intro p:not(.lead-assist-card__eyebrow),
.home-v2-lead-form .lead-assist-trust{
    display:none;
}

.home-v2-lead-form .lead-assist-layout{
    grid-template-columns:minmax(0,1fr);
}

.home-v2-lead-form .lead-assist-form-card{
    box-shadow:none;
}

@media (max-width:1180px){
    .home-v2-hero__grid,
    .home-v2-lead-shell{
        grid-template-columns:1fr;
    }

    .home-v2-hero h1{
        max-width:15ch;
    }

    .home-v2-tools-grid,
    .home-v2-insight-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .home-v2-solve-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .home-v2-audience-grid{
        grid-template-columns:1fr;
    }
}

@media (max-width:900px){
    .home-v2-process-line{
        grid-template-columns:1fr;
    }

    .home-v2-process-line::before{
        display:none;
    }

    .home-v2-step-card{
        grid-template-columns:auto auto minmax(0,1fr);
        justify-items:start;
        text-align:left;
        align-items:center;
        padding:.85rem 1rem;
        border:1px solid rgba(26,31,54,.07);
        border-radius:1rem;
        background:rgba(255,255,255,.9);
    }

    .home-v2-step-card img{
        width:3.25rem;
        height:3.25rem;
    }

    .home-v2-faq-grid,
    .home-v2-lead-form .lead-assist-card__header{
        grid-template-columns:1fr;
    }
}

@media (max-width:760px){
    .home-v2-hero{
        padding-top:2.4rem;
    }

    .home-v2-hero h1{
        max-width:none;
        font-size:clamp(2.2rem,13vw,3.2rem);
    }

    .home-v2-trust-row,
    .home-v2-solve-grid,
    .home-v2-tools-grid,
    .home-v2-insight-grid,
    .home-v2-audience-grid{
        grid-template-columns:1fr;
    }

    .home-v2-actions .button{
        width:100%;
        justify-content:center;
    }

    .home-v2-hero__visual::before{
        inset:10% 4% 4%;
    }

    .home-v2-solve-card,
    .home-v2-audience-card{
        grid-template-columns:1fr;
    }

    .home-v2-audience-card img{
        max-height:13rem;
    }

    .home-v2-insights-shell,
    .home-v2-lead-shell{
        border-radius:1.25rem;
    }

    .home-v2-lead-copy img{
        width:min(100%,15rem);
    }
}


/* Homepage v3: compact, adaptive, content-first redesign */
.home-v3-hero,
.home-v3-section,
.home-v3-hero *,
.home-v3-section * {
    box-sizing: border-box;
}

.home-v3-hero,
.home-v3-section {
    position: relative;
    overflow: clip;
}

.home-v3-hero {
    padding: clamp(2.8rem, 5vw, 5.2rem) 0 clamp(1.8rem, 3vw, 2.6rem);
    background:
        radial-gradient(circle at 12% 12%, rgba(232,96,76,.12), transparent 28rem),
        radial-gradient(circle at 88% 4%, rgba(45,106,90,.10), transparent 30rem),
        linear-gradient(180deg, rgba(255,250,244,.98), rgba(255,255,255,.98) 76%, rgba(250,247,241,.94));
}

.home-v3-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, .96fr) minmax(360px, 1.04fr);
    gap: clamp(1.3rem, 3.4vw, 3.4rem);
    align-items: center;
}

.home-v3-hero__copy,
.home-v3-stack {
    display: grid;
    gap: 1.15rem;
}

.home-v3-kicker {
    display: inline-flex;
    width: fit-content;
    max-width: 100%;
    margin: 0;
    padding: .38rem .68rem;
    border: 1px solid rgba(232,96,76,.15);
    border-radius: 999px;
    background: rgba(255,244,238,.86);
    color: var(--primary);
    font-size: .74rem;
    font-weight: 850;
    line-height: 1.25;
    letter-spacing: .07em;
    text-transform: uppercase;
}

.home-v3-hero h1 {
    max-width: 13ch;
    margin: 0;
    font-size: clamp(2.65rem, 5vw, 5rem);
    line-height: .98;
    letter-spacing: -.055em;
}

.home-v3-hero__lead {
    max-width: 47rem;
    margin: 0;
    color: var(--text-secondary);
    font-size: clamp(1rem, 1.2vw, 1.12rem);
    line-height: 1.72;
}

.home-v3-actions,
.home-v3-center-action {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    align-items: center;
}

.home-v3-hero__visual {
    position: relative;
    min-width: 0;
}

.home-v3-hero__visual::before {
    content: '';
    position: absolute;
    inset: 9% 4% 3% 5%;
    border-radius: 2rem;
    background: linear-gradient(135deg, rgba(255,255,255,.88), rgba(255,241,231,.68));
    box-shadow: 0 28px 78px rgba(26,31,54,.10);
    transform: rotate(-1.2deg);
}

.home-v3-hero__visual picture,
.home-v3-hero__visual img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}

.home-v3-hero__visual img {
    filter: drop-shadow(0 22px 34px rgba(26,31,54,.10));
}

.home-v3-section {
    padding: clamp(1.8rem, 4vw, 3.6rem) 0;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(250,247,241,.94));
}

.home-v3-section--tools,
.home-v3-section--audience,
.home-v3-section--faq {
    background: linear-gradient(180deg, rgba(250,247,241,.94), rgba(255,255,255,.98));
}

.home-v3-section-head {
    display: grid;
    gap: .45rem;
    max-width: 56rem;
}

.home-v3-section-head--center {
    margin: 0 auto;
    text-align: center;
    justify-items: center;
}

.home-v3-section-head h2 {
    margin: 0;
    font-size: clamp(1.75rem, 3vw, 2.8rem);
    line-height: 1.06;
    letter-spacing: -.04em;
}

.home-v3-section-head p:not(.home-v3-kicker),
.home-v3-rich-text p {
    margin: 0;
    color: var(--text-secondary);
    font-size: 1rem;
    line-height: 1.68;
}

.home-v3-decision-panel,
.home-v3-workflow-panel,
.home-v3-insights-shell,
.home-v3-trust-panel,
.home-v3-lead-shell {
    width: min(100%, 1120px);
    margin: 0 auto;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 1.75rem;
    background: rgba(255,255,255,.96);
    box-shadow: 0 20px 54px rgba(26,31,54,.07);
}

.home-v3-decision-panel {
    padding: clamp(1.15rem, 2.6vw, 1.8rem);
    background:
        radial-gradient(circle at 100% 0%, rgba(232,96,76,.06), transparent 24rem),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,249,255,.94));
}

.home-v3-decision-content {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr);
    gap: clamp(1rem, 2.4vw, 2rem);
    margin-top: 1rem;
    align-items: start;
}

.home-v3-rich-text {
    display: grid;
    gap: .75rem;
}

.home-v3-check-list {
    display: grid;
    gap: .62rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-v3-check-list li {
    position: relative;
    padding: .78rem .85rem .78rem 2.2rem;
    border: 1px solid rgba(112,141,183,.14);
    border-radius: 1rem;
    background: rgba(255,255,255,.9);
    color: var(--text-secondary);
    line-height: 1.5;
}

.home-v3-check-list li::before {
    content: '';
    position: absolute;
    left: .85rem;
    top: 1rem;
    width: .68rem;
    height: .68rem;
    border-radius: 50%;
    background: linear-gradient(135deg, #2d6a5a, #7ac7ad);
    box-shadow: 0 0 0 .25rem rgba(45,106,90,.10);
}

.home-v3-tools-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.home-v3-tool-card {
    display: grid;
    grid-template-columns: minmax(140px, .42fr) minmax(0, 1fr);
    gap: 1rem;
    align-items: stretch;
    min-width: 0;
    padding: 1rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 1.45rem;
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,252,248,.96));
    box-shadow: 0 16px 40px rgba(26,31,54,.06);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.home-v3-tool-card:hover {
    transform: translateY(-2px);
    border-color: rgba(232,96,76,.18);
    box-shadow: 0 24px 52px rgba(26,31,54,.09);
}

.home-v3-tool-card img {
    display: block;
    width: 100%;
    max-width: 13.5rem;
    height: 100%;
    min-height: 12rem;
    object-fit: contain;
    justify-self: center;
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(255,247,241,.72), rgba(255,255,255,.86));
}

.home-v3-tool-card__body {
    display: grid;
    gap: .55rem;
    align-content: start;
    min-width: 0;
}

.home-v3-tool-card h3,
.home-v3-workflow-step h3,
.home-v3-audience-card h3,
.home-v3-insight-main h3 {
    margin: 0;
    font-size: clamp(1.05rem, 1.45vw, 1.26rem);
    line-height: 1.25;
}

.home-v3-tool-card p,
.home-v3-workflow-step p,
.home-v3-audience-card p,
.home-v3-insight-main p,
.home-v3-metric-card span,
.home-v3-metric-card p,
.home-v3-faq-item p {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.58;
}

.home-v3-tool-when {
    color: var(--text) !important;
    font-weight: 750;
}

.home-v3-tool-card a {
    display: inline-flex;
    gap: .35rem;
    align-items: center;
    width: fit-content;
    margin-top: .25rem;
    color: var(--primary);
    font-weight: 850;
    text-decoration: none;
}

.home-v3-center-action {
    justify-content: center;
}

.home-v3-workflow-panel {
    padding: clamp(1.15rem, 2.6vw, 1.8rem);
    background:
        radial-gradient(circle at 0% 20%, rgba(45,106,90,.07), transparent 22rem),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,250,245,.94));
}

.home-v3-workflow-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
    margin-top: 1.1rem;
    counter-reset: workflow;
}

.home-v3-workflow-step {
    position: relative;
    min-width: 0;
    padding: 1rem 1rem 1rem 1.15rem;
    border: 1px solid rgba(26,31,54,.07);
    border-left: 4px solid rgba(232,96,76,.65);
    border-radius: 1.1rem;
    background: rgba(255,255,255,.92);
}

.home-v3-insights-shell {
    padding: clamp(1.15rem, 2.6vw, 1.8rem);
    background:
        radial-gradient(circle at 100% 0%, rgba(232,96,76,.08), transparent 24rem),
        linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,249,255,.95));
}

.home-v3-insight-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(310px, .92fr);
    gap: 1rem;
    margin-top: 1rem;
    align-items: stretch;
}

.home-v3-insight-main,
.home-v3-metric-card {
    border: 1px solid rgba(26,31,54,.07);
    border-radius: 1.2rem;
    background: rgba(255,255,255,.94);
    box-shadow: 0 12px 30px rgba(15,23,42,.04);
}

.home-v3-insight-main {
    display: grid;
    gap: .85rem;
    padding: 1.15rem;
}

.home-v3-budget-visual {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1rem;
    align-items: center;
    margin-top: .3rem;
}

.home-v3-donut {
    width: min(10rem, 32vw);
    aspect-ratio: 1;
    border-radius: 50%;
    background: conic-gradient(#2d6a5a 0 36%, #4f6f9a 36% 58%, #f59e0b 58% 72%, #dbe5f2 72% 100%);
    box-shadow: inset 0 0 0 1.7rem #fff, 0 12px 26px rgba(15,23,42,.08);
}

.home-v3-budget-visual ul {
    display: grid;
    gap: .55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.home-v3-budget-visual li {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: .35rem;
    border-bottom: 1px solid rgba(26,31,54,.07);
    color: var(--text-secondary);
}

.home-v3-insight-side {
    display: grid;
    gap: .85rem;
}

.home-v3-metric-card {
    display: grid;
    gap: .48rem;
    padding: 1rem;
}

.home-v3-metric-card strong {
    font-size: clamp(1.35rem, 2.4vw, 1.9rem);
    line-height: 1;
    letter-spacing: -.035em;
}

.home-v3-meter,
.home-v3-city-bars i {
    display: block;
    height: .66rem;
    border-radius: 999px;
    background: rgba(112,141,183,.14);
    overflow: hidden;
}

.home-v3-meter i,
.home-v3-city-bars em {
    display: block;
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg, #4f6f9a, #9bb7f2);
}

.home-v3-meter--green i {
    background: linear-gradient(90deg, #2d6a5a, #55b99a);
}

.home-v3-city-bars {
    display: grid;
    gap: .5rem;
}

.home-v3-city-bars p {
    display: grid;
    grid-template-columns: 5rem minmax(0,1fr);
    gap: .65rem;
    align-items: center;
    margin: 0;
    color: var(--text-secondary);
}

.home-v3-audience-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.home-v3-audience-card {
    display: grid;
    grid-template-columns: minmax(92px, .42fr) minmax(0, 1fr);
    gap: .9rem;
    align-items: center;
    min-width: 0;
    padding: 1rem;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 1.25rem;
    background: rgba(255,255,255,.94);
    box-shadow: 0 14px 34px rgba(26,31,54,.055);
}

.home-v3-audience-card img {
    display: block;
    width: 100%;
    height: 9.5rem;
    object-fit: contain;
    border-radius: 1rem;
    background: linear-gradient(180deg, rgba(255,247,241,.7), rgba(255,255,255,.86));
}

.home-v3-trust-panel {
    padding: clamp(1.15rem, 2.6vw, 1.8rem);
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,250,245,.94));
}

.home-v3-rich-text--columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.home-v3-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem 1rem;
}

.home-v3-faq-item {
    min-width: 0;
    border: 1px solid rgba(26,31,54,.08);
    border-radius: 1rem;
    background: rgba(255,255,255,.94);
    box-shadow: 0 10px 24px rgba(26,31,54,.035);
    overflow: hidden;
}

.home-v3-faq-item summary {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    padding: .95rem 1.05rem;
    cursor: pointer;
    list-style: none;
    font-weight: 800;
}

.home-v3-faq-item summary::-webkit-details-marker {
    display: none;
}

.home-v3-faq-item summary::after {
    content: '+';
    display: grid;
    place-items: center;
    width: 1.65rem;
    height: 1.65rem;
    border-radius: 999px;
    background: rgba(246,249,255,.95);
    color: #4f6f9a;
    flex: 0 0 auto;
}

.home-v3-faq-item[open] summary::after {
    content: '−';
}

.home-v3-faq-item p {
    padding: 0 1.05rem 1rem;
}

.home-v3-section--lead {
    padding-top: clamp(2.2rem, 5vw, 4.2rem);
    padding-bottom: clamp(2rem, 4vw, 3.4rem);
    background: linear-gradient(180deg, rgba(250,247,241,.94), rgba(255,255,255,.98));
}

.home-v3-lead-shell {
    display: grid;
    grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
    gap: 1rem;
    align-items: center;
    padding: clamp(1rem, 2.4vw, 1.55rem);
    border-color: rgba(232,96,76,.14);
    background:
        radial-gradient(circle at 0% 100%, rgba(45,106,90,.10), transparent 18rem),
        linear-gradient(135deg, rgba(255,238,226,.98), rgba(255,251,247,.96));
    box-shadow: 0 24px 58px rgba(26,31,54,.09);
}

.home-v3-lead-copy {
    display: grid;
    gap: .9rem;
    align-content: center;
    min-width: 0;
}

.home-v3-lead-copy img {
    display: block;
    width: min(100%, 18rem);
    height: auto;
    object-fit: contain;
}

.home-v3-lead-copy h2 {
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.65rem);
    line-height: 1.05;
    letter-spacing: -.04em;
}

.home-v3-lead-copy p:not(.home-v3-kicker) {
    margin: 0;
    color: var(--text-secondary);
    line-height: 1.65;
}

.home-v3-lead-form {
    min-width: 0;
    width: 100%;
    justify-self: center;
}

.home-v3-lead-form .lead-assist-card,
.home-v3-lead-form .lead-assist-form-card {
    width: 100%;
    max-width: 100%;
    margin-left: auto !important;
    margin-right: auto !important;
}

.home-v3-lead-form .lead-assist-card {
    border-radius: 1.35rem;
    background: rgba(255,255,255,.94);
    box-shadow: 0 16px 34px rgba(15,23,42,.07);
}

.home-v3-lead-form .lead-assist-card__header {
    grid-template-columns: minmax(0, 1fr) minmax(160px, .34fr);
}

.home-v3-lead-form .lead-assist-card__intro h2,
.home-v3-lead-form .lead-assist-card__intro p:not(.lead-assist-card__eyebrow),
.home-v3-lead-form .lead-assist-trust {
    display: none;
}

.home-v3-lead-form .lead-assist-layout {
    grid-template-columns: minmax(0, 1fr);
}

.home-v3-lead-form .lead-assist-form-card {
    box-shadow: none;
}

.home-v3-lead-form input,
.home-v3-lead-form select,
.home-v3-lead-form textarea,
.home-v3-lead-form button {
    max-width: 100%;
}

@media (max-width: 1180px) {
    .home-v3-hero__grid,
    .home-v3-decision-content,
    .home-v3-insight-layout,
    .home-v3-lead-shell {
        grid-template-columns: 1fr;
    }

    .home-v3-hero h1 {
        max-width: 16ch;
    }

    .home-v3-tools-grid,
    .home-v3-audience-grid {
        grid-template-columns: 1fr;
    }

    .home-v3-tool-card {
        grid-template-columns: minmax(120px, .32fr) minmax(0, 1fr);
    }

    .home-v3-lead-copy {
        justify-items: center;
        text-align: center;
    }

    .home-v3-lead-form {
        max-width: 780px;
    }
}

@media (max-width: 860px) {
    .home-v3-workflow-grid,
    .home-v3-rich-text--columns,
    .home-v3-faq-grid {
        grid-template-columns: 1fr;
    }

    .home-v3-hero {
        padding-top: 2.25rem;
    }

    .home-v3-section {
        padding: 1.65rem 0;
    }
}

@media (max-width: 760px) {
    .home-v3-hero h1 {
        max-width: none;
        font-size: clamp(2.15rem, 12vw, 3.15rem);
    }

    .home-v3-actions .button {
        width: 100%;
        justify-content: center;
    }

    .home-v3-hero__visual::before {
        inset: 12% 4% 4%;
        border-radius: 1.25rem;
    }

    .home-v3-decision-panel,
    .home-v3-workflow-panel,
    .home-v3-insights-shell,
    .home-v3-trust-panel,
    .home-v3-lead-shell {
        border-radius: 1.2rem;
    }

    .home-v3-tool-card,
    .home-v3-audience-card,
    .home-v3-budget-visual {
        grid-template-columns: 1fr;
    }

    .home-v3-tool-card img {
        max-width: 100%;
        height: 12rem;
        min-height: 0;
    }

    .home-v3-audience-card img {
        height: 11rem;
    }

    .home-v3-budget-visual {
        justify-items: center;
    }

    .home-v3-donut {
        width: min(10rem, 70vw);
    }

    .home-v3-city-bars p {
        grid-template-columns: minmax(4.5rem, .34fr) minmax(0, 1fr);
    }

    .home-v3-lead-form .lead-assist-card__header,
    .home-v3-lead-form .lead-assist-form-grid,
    .home-v3-lead-form .lead-assist-contact-grid,
    .home-v3-lead-form .lead-assist-layout {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 420px) {
    .home-v3-kicker {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .home-v3-hero h1 {
        font-size: clamp(2rem, 11vw, 2.75rem);
    }

    .home-v3-decision-panel,
    .home-v3-workflow-panel,
    .home-v3-insights-shell,
    .home-v3-trust-panel,
    .home-v3-lead-shell,
    .home-v3-tool-card,
    .home-v3-audience-card {
        padding: .9rem;
    }
}


/* Offer Quality: make the desktop form use the full available block width. */
@media (min-width: 981px) {
    .tool-layout--offer-quality,
    .offer-quality-tool-layout {
        display: grid;
        grid-template-columns: minmax(0, 1fr) !important;
        width: 100% !important;
        max-width: none !important;
    }

    .tool-layout--offer-quality > .tool-form-wrap,
    .offer-quality-tool-layout > .tool-form-wrap,
    .tool-layout--offer-quality .tool-form-wrap,
    .offer-quality-tool-layout .tool-form-wrap {
        width: 100% !important;
        max-width: none !important;
        min-width: 0;
    }

    .tool-layout--offer-quality .tool-form-wrap > .info-card,
    .offer-quality-tool-layout .tool-form-wrap > .info-card,
    .tool-layout--offer-quality .salary-tool-redesign-card,
    .offer-quality-tool-layout .salary-tool-redesign-card {
        width: 100% !important;
        max-width: none !important;
    }

    .tool-layout--offer-quality .tool-form,
    .offer-quality-tool-layout .tool-form,
    .tool-layout--offer-quality .salary-tool-form-v2,
    .offer-quality-tool-layout .salary-tool-form-v2 {
        width: 100% !important;
        max-width: none !important;
    }

    .tool-layout--offer-quality .form-grid.two-col-grid,
    .offer-quality-tool-layout .form-grid.two-col-grid,
    .tool-layout--offer-quality .salary-tool-section-grid,
    .offer-quality-tool-layout .salary-tool-section-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 1rem !important;
    }

    .tool-layout--offer-quality .form-field--primary-salary,
    .offer-quality-tool-layout .form-field--primary-salary {
        grid-column: span 1 !important;
    }

    .tool-layout--offer-quality .button-form-submit,
    .offer-quality-tool-layout .button-form-submit {
        width: 100% !important;
    }
}

@media (max-width: 980px) {
    .tool-layout--offer-quality .form-grid.two-col-grid,
    .offer-quality-tool-layout .form-grid.two-col-grid,
    .tool-layout--offer-quality .salary-tool-section-grid,
    .offer-quality-tool-layout .salary-tool-section-grid {
        grid-template-columns: 1fr !important;
    }

    .tool-layout--offer-quality .form-field--primary-salary,
    .offer-quality-tool-layout .form-field--primary-salary {
        grid-column: auto !important;
    }
}
