/* Inflation & Prices sub-hub */
.inflation-hero {
  padding: 72px 0 54px;
  border-bottom: 1px solid var(--line);
  background:
    radial-gradient(circle at 88% 10%, rgba(65,163,216,.13), transparent 28%),
    linear-gradient(180deg,#fbfdff,#fff);
}
.inflation-hero-grid {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:56px;
  align-items:center;
}
.breadcrumbs {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:18px;
  color:var(--muted-2);
  font-size:11px;
  font-weight:700;
}
.breadcrumbs a:hover { color:var(--blue); }
.breadcrumbs span::before { content:'›'; margin-right:8px; color:#aab7c3; }
.inflation-hero h1 {
  margin:0;
  max-width:760px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(48px,6vw,76px);
  line-height:.98;
  font-weight:500;
  letter-spacing:-.035em;
  color:var(--navy);
}
.inflation-hero h1 span { color:var(--blue); }
.inflation-hero .lead {
  max-width:760px;
  margin:22px 0 0;
  color:#4c5f72;
  font-size:17px;
  line-height:1.7;
}
.hero-actions-row { display:flex; flex-wrap:wrap; gap:10px; margin-top:27px; }

.snapshot-card {
  border:1px solid var(--line-strong);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow);
  padding:24px;
}
.snapshot-top { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; padding-bottom:17px; border-bottom:1px solid var(--line); }
.snapshot-top span { color:var(--blue); font-size:9px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.snapshot-top strong { display:block; margin-top:7px; color:var(--navy); font-family:Georgia,"Times New Roman",serif; font-size:24px; font-weight:500; }
.snapshot-status { flex:0 0 auto; border:1px solid #cfe4d9; border-radius:999px; padding:6px 9px; color:var(--success)!important; background:#f3fbf7; font-family:inherit!important; font-size:9px!important; font-weight:850!important; text-transform:uppercase; letter-spacing:.05em!important; }
.snapshot-lines { display:grid; gap:0; }
.snapshot-line { display:grid; grid-template-columns:42px 1fr auto; gap:12px; align-items:center; padding:14px 0; border-bottom:1px solid #edf1f5; }
.snapshot-line:last-child { border-bottom:0; }
.snapshot-line i { width:38px; height:38px; display:grid; place-items:center; border-radius:9px; background:var(--blue-soft); color:var(--blue); font-style:normal; font-size:10px; font-weight:850; }
.snapshot-line strong { display:block; color:var(--navy); font-size:12px; }
.snapshot-line small { display:block; margin-top:3px; color:var(--muted-2); font-size:9px; }
.snapshot-line b { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.05em; }
.snapshot-foot { margin-top:12px; color:var(--muted-2); font-size:9px; line-height:1.45; }

.inflation-section { padding:68px 0; }
.inflation-section.alt { background:var(--canvas); border-top:1px solid #edf1f4; border-bottom:1px solid #edf1f4; }
.inflation-heading { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:50px; align-items:end; margin-bottom:30px; }
.inflation-heading h2 { margin:8px 0 0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(34px,4vw,50px); font-weight:500; line-height:1.06; letter-spacing:-.025em; color:var(--navy); }
.inflation-heading p { margin:0; color:var(--muted); font-size:14px; line-height:1.7; }

.feature-module {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);
  gap:0;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}
.feature-copy { padding:30px; }
.feature-meta { display:flex; flex-wrap:wrap; gap:8px; }
.feature-meta span { display:inline-flex; padding:6px 9px; border-radius:999px; background:var(--blue-soft); color:var(--blue-dark); font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.06em; }
.feature-meta span:last-child { background:#f2faf6; color:var(--success); }
.feature-copy h3 { margin:24px 0 12px; color:var(--navy); font-size:28px; letter-spacing:-.02em; }
.feature-copy p { margin:0; max-width:650px; color:var(--muted); font-size:14px; line-height:1.7; }
.feature-copy .module-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px; }
.feature-visual {
  min-height:340px;
  padding:28px;
  background:linear-gradient(145deg,#08243d,#0c4d78);
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.feature-visual .visual-label { color:#9fd7ef; font-size:9px; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.component-stack { display:grid; gap:12px; margin:18px 0; }
.component-line { display:grid; grid-template-columns:92px 1fr; gap:12px; align-items:center; }
.component-line span { color:#c9d9e5; font-size:10px; }
.component-line i { height:9px; border-radius:999px; background:rgba(255,255,255,.12); overflow:hidden; }
.component-line i::before { content:''; display:block; height:100%; width:var(--w); border-radius:inherit; background:linear-gradient(90deg,#2f9ed4,#8ed7ef); }
.feature-visual small { color:#92aabd; font-size:9px; line-height:1.45; }

.track-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.track-card { min-height:150px; padding:20px; border:1px solid var(--line); border-radius:13px; background:#fff; display:grid; grid-template-columns:46px 1fr auto; gap:14px; align-items:start; }
.track-card .num { width:44px; height:44px; display:grid; place-items:center; border-radius:10px; background:var(--panel); color:var(--blue); font-size:10px; font-weight:850; }
.track-card h3 { margin:0; color:var(--navy); font-size:16px; }
.track-card p { margin:6px 0 0; color:var(--muted); font-size:11px; line-height:1.5; }
.track-state { font-size:9px; font-weight:850; text-transform:uppercase; letter-spacing:.05em; color:var(--muted-2); white-space:nowrap; }
.track-state.live { color:var(--success); }

.transmission-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.transmission-card { min-height:185px; padding:22px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.transmission-card span { color:var(--blue); font-size:9px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.transmission-card h3 { margin:22px 0 9px; color:var(--navy); font-size:18px; }
.transmission-card p { margin:0; color:var(--muted); font-size:11px; line-height:1.55; }

.access-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.access-card { border:1px solid var(--line); border-radius:14px; padding:24px; background:#fff; }
.access-card.premium { border-color:#d8e5ef; background:#f9fcfe; }
.access-card .access-label { color:var(--blue); font-size:9px; font-weight:850; letter-spacing:.11em; text-transform:uppercase; }
.access-card h3 { margin:18px 0 10px; color:var(--navy); font-size:21px; }
.access-list { margin:0; padding:0; list-style:none; }
.access-list li { padding:9px 0; border-bottom:1px solid #edf1f5; color:var(--muted); font-size:11px; }
.access-list li:last-child { border-bottom:0; }

.method-strip { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; border:1px solid var(--line); border-radius:14px; overflow:hidden; background:var(--line); }
.method-strip div { min-height:112px; padding:19px; background:#fff; }
.method-strip strong { display:block; color:var(--navy); font-size:13px; }
.method-strip span { display:block; margin-top:7px; color:var(--muted-2); font-size:10px; line-height:1.45; }

.inflation-cta { padding:54px 0; background:var(--navy); color:#fff; }
.inflation-cta .container { display:grid; grid-template-columns:.9fr 1.1fr; gap:50px; align-items:center; }
.inflation-cta h2 { margin:0; font-family:Georgia,"Times New Roman",serif; font-size:clamp(32px,4vw,48px); font-weight:500; line-height:1.05; }
.inflation-cta p { margin:0; color:#b6c7d6; font-size:14px; line-height:1.7; }

@media (max-width:900px) {
  .inflation-hero-grid,.inflation-heading,.feature-module,.inflation-cta .container { grid-template-columns:1fr; }
  .track-grid,.transmission-grid { grid-template-columns:1fr 1fr; }
  .method-strip { grid-template-columns:1fr 1fr; }
}
@media (max-width:640px) {
  .inflation-hero { padding:50px 0 42px; }
  .inflation-hero h1 { font-size:clamp(43px,13vw,58px); }
  .inflation-hero .lead { font-size:15px; }
  .inflation-section { padding:54px 0; }
  .track-grid,.transmission-grid,.access-grid,.method-strip { grid-template-columns:1fr; }
  .track-card { grid-template-columns:42px 1fr; }
  .track-state { grid-column:2; }
}
