/* DondeRinde editorial identity. Native serif headlines, warm paper and ink. */
:root { --dr-paper: #f7f5ee; --dr-ink: #182b36; --dr-moss: #37634d; --dr-rule: #dcded5; --dr-serif: Georgia, 'Times New Roman', serif; }
body.dr-home { --navy: #182b36; --blue: #2b5560; --green: #37634d; --lime: #d4dfb9; --green-light: #edf0e6; background: var(--dr-paper); color: var(--dr-ink); }
.site-header.dr-header { background: var(--dr-paper); border-bottom-color: var(--dr-rule); }
.site-header.dr-header .dr-header-row { max-width: 1240px; min-height: 88px; }
.site-header.dr-header .dr-primary-nav a { color: var(--dr-ink); font-size: 0.83rem; }
.site-header.dr-header summary { background: transparent; border-color: var(--dr-rule); border-radius: 5px; }
.site-header.dr-header .brand-link img { height: 36px; max-height: 36px; }
.dr-home .radar-home-banner { background: var(--dr-paper); border-bottom-color: var(--dr-rule); }
.dr-home .radar-ticker-badge { border-radius: 0; padding-inline: 0; background: none; font-size: 0.65rem; letter-spacing: 0.08em; }
.dr-home .radar-ticker-item { font-size: 0.75rem; }
.dr-home .hero { padding: 3.75rem 0 4rem; background: var(--dr-paper); border-bottom: 1px solid var(--dr-rule); }
.dr-hero-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr); gap: clamp(2rem, 5vw, 5rem); align-items: center; }
.dr-home .dr-hero-copy .hero-tag { color: var(--dr-moss); text-transform: uppercase; font-size: 0.68rem; letter-spacing: 0.16em; margin-bottom: 1.8rem; }
.dr-brand-line { width: 28px; height: 1px; background: var(--dr-moss); display: inline-block; }
.dr-home .dr-hero-copy h1 { font-family: var(--dr-serif); font-weight: 400; font-size: clamp(3.2rem, 5.7vw, 5rem); letter-spacing: -0.055em; line-height: 1.04; max-width: none; }
.dr-home .dr-hero-copy h1 span { color: var(--dr-moss); font-style: italic; }
.dr-home .dr-hero-copy > p { max-width: 46ch; font-size: 0.98rem; line-height: 1.85; margin-block: 1.65rem 2rem; color: #54605f; }
.dr-home .dr-hero-actions a { padding: 0.95rem 1.1rem; border-radius: 5px; font-size: 0.8rem; }
.dr-home .dr-action-primary { background: var(--dr-ink); }
.dr-home .dr-action-secondary { border: 0; background: transparent; padding-inline: 0.6rem; color: var(--dr-ink); }
.dr-hero-footnote { display: flex; flex-wrap: wrap; gap: 1.4rem; padding-top: 2.75rem; color: #737b70; font-size: 0.65rem; letter-spacing: 0.06em; text-transform: uppercase; }
.dr-feature-story { display: block; text-decoration: none; color: #f7f5ee; background: var(--dr-ink); padding: 1.9rem 2rem 0; border-radius: 5px; box-shadow: 12px 12px 0 #e9e8dc; transform: rotate(1deg); }
.dr-feature-top { display: flex; justify-content: space-between; align-items: center; text-transform: uppercase; font-size: 0.6rem; letter-spacing: 0.12em; border-bottom: 1px solid #43535a; padding-bottom: 1rem; color: #c2d0bf; }
.dr-feature-number { font-family: var(--dr-serif); font-size: 1.6rem; letter-spacing: 0; }
.dr-feature-story h2 { font-family: var(--dr-serif); font-weight: 400; font-size: clamp(1.7rem, 2.6vw, 2.35rem); line-height: 1.18; margin-block: 1.5rem 0.8rem; letter-spacing: -0.035em; color: #f7f5ee; }
.dr-home .dr-feature-story > p { font-size: 0.82rem; color: #c0cac8; margin: 0; line-height: 1.65; }
.dr-visual-example { padding-block: 1.75rem 1rem; }
.dr-example-bars { display: flex; height: 135px; align-items: flex-end; gap: 1.2rem; border-bottom: 1px solid #627069; }
.dr-bar { position: relative; display: block; flex: 1; border-radius: 3px 3px 0 0; }
.dr-bar b { display: block; position: absolute; bottom: calc(100% + 0.5rem); width: 100%; text-align: center; font-size: 0.78rem; font-weight: 600; }
.dr-bar-nominal { height: 90px; background: #adc3a1; }
.dr-bar-inflation { height: 45px; background: #ccab83; }
.dr-bar-real { height: 43.3px; background: #f5f2e8; }
.dr-example-labels { display: flex; gap: 1.2rem; padding-top: 0.65rem; }
.dr-example-labels span { flex: 1; text-align: center; font-size: 0.59rem; color: #c0cac8; }
.dr-example-note { color: #bac4c0; font-size: 0.62rem; line-height: 1.65; padding-bottom: 1.4rem; }
.dr-feature-bottom { display: flex; justify-content: space-between; gap: 1rem; border-top: 1px solid #43535a; margin-inline: -2rem; padding: 1rem 2rem; font-size: 0.73rem; }
.dr-feature-bottom > span:last-child { font-size: 1.2rem; color: #adc3a1; }
.dr-feature-story:hover .dr-feature-bottom { background: #223b43; }
.dr-home .dr-start { padding-block: 3.25rem; }
.dr-home .dr-section-intro { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; margin-bottom: 1.6rem; }
.dr-home .dr-section-intro h2 { font-family: var(--dr-serif); font-weight: 400; font-size: clamp(1.7rem, 3vw, 2.35rem); letter-spacing: -0.035em; }
.dr-home .dr-eyebrow { color: var(--dr-moss); font-size: 0.62rem; letter-spacing: 0.12em; font-weight: 600; }
.dr-section-intro > a { font-size: 0.73rem; color: var(--dr-ink); text-underline-offset: 0.3em; white-space: nowrap; }
.dr-home .dr-start-grid { gap: 0; border-block: 1px solid var(--dr-rule); }
.dr-home .dr-start-card { position: relative; background: transparent; padding: 2rem 1.5rem; border: 0; border-right: 1px solid var(--dr-rule); border-radius: 0; }
.dr-home .dr-start-card:first-child { padding-left: 0; }
.dr-home .dr-start-card:last-child { border-right: 0; }
.dr-card-index { position: absolute; top: 1.2rem; right: 1.2rem; color: #b3b7a8; font-family: var(--dr-serif); font-size: 1.4rem; }
.dr-home .dr-start-card h3 { font-family: var(--dr-serif); font-weight: 400; font-size: 1.6rem; line-height: 1.2; letter-spacing: -0.025em; margin-block: 0.5rem 0.7rem; }
.dr-home .dr-start-card p { font-size: 0.82rem; line-height: 1.8; max-width: 34ch; }
.dr-home .dr-card-link { display: flex; justify-content: space-between; padding-top: 1rem; font-size: 0.7rem; color: var(--dr-moss); }
.dr-home .dr-start-card:hover { background: #efeee4; }
.dr-home .tabs-nav-container { background: var(--dr-paper); border: 0; }
.dr-home .tabs-nav { border-bottom: 1px solid var(--dr-rule); }
.dr-home .tab-btn { border-radius: 4px; border: 0; background: transparent; color: var(--dr-ink); }
.dr-home .tab-btn.active { background: var(--dr-ink); color: white; }
.dr-home .simulator-card { background: #fffefa; border: 1px solid var(--dr-rule); border-radius: 5px; }
.dr-home .sim-results-banner { background: var(--dr-ink); border-radius: 5px; padding: 1.75rem; }
.dr-home .sim-stat .value { font-family: var(--dr-serif); font-weight: 400; font-size: 1.7rem; }
.dr-home .sim-header h3 { font-family: var(--dr-serif); font-weight: 400; font-size: 1.8rem; letter-spacing: -0.03em; }
.dr-home .pill-btn, .dr-home .sim-mode-toggle { border-radius: 5px; }
.dr-home .section-header h2 { font-family: var(--dr-serif); font-weight: 400; }
.dr-home .card { border-radius: 5px; border-color: var(--dr-rule); box-shadow: none; }
.dr-home .card .rate-number { font-family: var(--dr-serif); font-weight: 400; }
.dr-home .site-footer { background: var(--dr-ink); }
.dr-home .radar-preview-section { margin-block: 3rem 4rem !important; }
.dr-home .radar-preview-section .section-header { align-items: flex-end; gap: 1.25rem; padding-bottom: 1rem; border-bottom: 1px solid var(--dr-rule); }
.dr-home .radar-home-eyebrow { margin: 0 0 0.5rem; color: var(--dr-moss); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.11em; text-transform: uppercase; }
.dr-home .radar-preview-section .section-header h2 { max-width: 24ch; margin: 0; font-family: var(--dr-serif); font-size: clamp(1.8rem, 3.2vw, 2.55rem); font-weight: 400; line-height: 1.14; letter-spacing: -0.035em; }
.dr-home .radar-preview-section .section-header p:not(.radar-home-eyebrow) { max-width: 64ch; margin: 0.7rem 0 0; color: #485653; font-size: 0.88rem; line-height: 1.7; }
.dr-home .news-source-status { margin: 1rem 0; padding: 0.8rem 1rem; border: 1px solid var(--dr-rule); background: #eeeee7; color: #253a3c; font-size: 0.78rem; line-height: 1.6; }
.dr-home .news-source-status[data-radar-state="FRESH"] { border-color: #82917d; background: #eaf0e8; }
.dr-home .news-source-status[data-radar-state="STALE"] { border-color: #a17f4f; background: #f4ecdb; color: #593b15; }
.dr-home .news-status-label { margin-right: 0.35rem; font-size: 0.75rem; letter-spacing: 0.06em; }
.dr-home #home-radar-preview-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin-top: 1rem; }
.dr-home .radar-home-card { display: flex; min-width: 0; flex-direction: column; align-items: flex-start; gap: 0.6rem; padding: 1.25rem; background: #fffefa; border: 1px solid var(--dr-rule); border-radius: 5px; }
.dr-home .radar-home-card-category { margin: 0; color: var(--dr-moss); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.09em; text-transform: uppercase; }
.dr-home .radar-home-card h3 { margin: 0; font-family: var(--dr-serif); font-size: 1.35rem; font-weight: 400; line-height: 1.25; letter-spacing: -0.02em; overflow-wrap: anywhere; }
.dr-home .radar-home-card h3 a { color: var(--dr-ink); text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
.dr-home .radar-home-card-meta { margin: 0; color: #56645e; font-size: 0.875rem; line-height: 1.55; }
.dr-home .radar-home-card-summary { margin: 0; color: #394946; font-size: 0.875rem; line-height: 1.7; }
.dr-home .radar-home-card-source { margin-top: auto; padding-top: 0.35rem; color: #245747; font-size: 0.875rem; font-weight: 700; line-height: 1.5; text-underline-offset: 0.2em; overflow-wrap: anywhere; }
.dr-home .radar-home-card a:focus-visible, .dr-home #btn-see-all-radar:focus-visible { outline: 3px solid #617c45; outline-offset: 3px; box-shadow: 0 0 0 2px #fffefa; }
.dr-home .radar-home-empty { grid-column: 1 / -1; margin: 0; padding: 1.2rem; color: #344542; background: #eeeee7; border: 1px solid var(--dr-rule); font-size: 0.85rem; line-height: 1.6; }
body .en-home-main .en-hero { background: var(--dr-paper); color: var(--dr-ink); border-bottom: 1px solid var(--dr-rule); }
body .en-home-main .en-hero::after { display: none; }
body .en-home-main .en-hero h1 { color: var(--dr-ink); font-family: var(--dr-serif); font-weight: 400; letter-spacing: -0.045em; }
body .en-home-main .en-hero p { color: #54605f; }
body .en-home-main .en-hero .en-eyebrow { color: var(--dr-moss); font-size: 0.7rem; }
body .en-home-main .en-hero .en-button { border-radius: 5px; background: var(--dr-ink); color: white; }
body .en-home-main .en-hero .en-button--quiet { background: transparent; color: var(--dr-ink) !important; border-color: var(--dr-rule); }
body .en-home-main .en-main h2 { font-family: var(--dr-serif); font-weight: 400; font-size: 2rem; }
body .en-home-main .en-card { border-radius: 5px; border-top: 1px solid var(--dr-rule); box-shadow: none; }
.dr-mobile-menu, .dr-mobile-dock { display: none; }
body.dr-reading { background: var(--dr-paper); color: var(--dr-ink); }
body.dr-reading .site-header { background: var(--dr-paper); border-bottom-color: var(--dr-rule); }
body.dr-reading .site-header .nav-links a { color: var(--dr-ink); }
body.dr-reading .guide-container { max-width: 860px; }
body.dr-reading .guide-container h1,
body.dr-reading .article-title { font-family: var(--dr-serif); font-weight: 400; font-size: clamp(2.1rem, 5vw, 3.3rem); line-height: 1.13; letter-spacing: -0.04em; color: var(--dr-ink); }
body.dr-reading .guide-container h2,
body.dr-reading .article-body h2 { font-family: var(--dr-serif); font-weight: 400; font-size: 1.7rem; letter-spacing: -0.02em; }
body.dr-reading .article-body { max-width: 800px; margin-inline: auto; }
body.dr-reading .article-header { max-width: 800px; margin-inline: auto; background: transparent; }
body.dr-reading .lead-box { background: #eeede1; border-left-color: var(--dr-moss); border-radius: 0; }
body.dr-reading .why-box, body.dr-reading .source-card { background: #fffefa; border-color: var(--dr-rule); border-radius: 5px; box-shadow: none; }
body.dr-reading .related-link-card { background: #fffefa; border-color: var(--dr-rule); border-radius: 5px; }
body.dr-reading .source-disclosure { color: #737b70; font-size: 0.8rem; line-height: 1.65; }
@media (max-width: 700px) {
  body.dr-home, body.dr-en-home { padding-bottom: calc(76px + env(safe-area-inset-bottom)); }
  .site-header.dr-header .dr-header-row { min-height: 68px; flex-wrap: nowrap; gap: 0.65rem; padding-block: 0.65rem; }
  .site-header.dr-header .brand-link img { height: 30px; max-height: 30px; }
  .site-header.dr-header .dr-header-row .dr-primary-nav { display: none; }
  .site-header.dr-header .dr-header-locale { margin-left: auto; }
  .site-header.dr-header .dr-header-locale summary { min-height: 40px; padding: 0.4rem 0.5rem; font-size: 0.7rem; }
  .site-header.dr-header .dr-mobile-menu { display: block; order: 4; }
  .site-header.dr-header .dr-mobile-menu > summary { min-height: 40px; border: 0; padding: 0.5rem; font-size: 0.72rem; }
  .site-header.dr-header .dr-mobile-menu > summary::after { content: '☰'; font-size: 1rem; }
  .dr-mobile-menu-panel { position: absolute; right: 0; top: calc(100% + 1rem); width: min(320px, calc(100vw - 2rem)); max-height: 70vh; overflow-y: auto; padding: 0.75rem; background: #fffefa; border: 1px solid var(--dr-rule); border-radius: 7px; box-shadow: 0 15px 45px rgb(24 43 54 / 15%); }
  .dr-mobile-menu:not([open]) .dr-mobile-menu-panel { display: none; }
  .dr-mobile-menu-panel a { display: block; padding: 0.8rem 0.75rem; min-height: 44px; border-bottom: 1px solid #eeeee5; color: var(--dr-ink); text-decoration: none; font-size: 0.85rem; }
  .dr-mobile-menu-panel a:last-child { border-bottom: 0; }
  .dr-home .hero { padding-block: 2.25rem; }
  .dr-hero-layout { grid-template-columns: 1fr; gap: 2.3rem; }
  .dr-home .dr-hero-copy .hero-tag { margin-bottom: 1.3rem; font-size: 0.59rem; }
  .dr-home .dr-hero-copy h1 { font-size: clamp(3rem, 12vw, 4.1rem); line-height: 1.02; }
  .dr-home .dr-hero-copy > p { font-size: 0.87rem; line-height: 1.8; margin-block: 1.2rem 1.5rem; }
  .dr-home .dr-hero-actions { display: grid; grid-template-columns: 1fr; gap: 0.2rem; }
  .dr-home .dr-hero-actions a { justify-content: space-between; padding: 1rem; }
  .dr-home .dr-action-secondary { padding-left: 0; }
  .dr-hero-footnote { padding-top: 1.25rem; gap: 1rem; font-size: 0.58rem; }
  .dr-feature-story { transform: none; padding: 1.3rem 1.4rem 0; box-shadow: 6px 6px 0 #e9e8dc; }
  .dr-feature-story h2 { font-size: 1.9rem; }
  .dr-feature-bottom { margin-inline: -1.4rem; padding-inline: 1.4rem; }
  .dr-home .dr-section-intro { align-items: flex-start; flex-direction: column; }
  .dr-home .dr-start-grid { grid-template-columns: 1fr; }
  .dr-home .dr-start-card, .dr-home .dr-start-card:first-child { padding: 1.5rem 0; border-right: 0; border-bottom: 1px solid var(--dr-rule); }
  .dr-home .dr-start-card:last-child { border-bottom: 0; }
  .dr-home .dr-start-card h3 { font-size: 1.55rem; }
  .dr-home .dr-start-card p { max-width: none; }
  .dr-mobile-dock { display: grid; grid-template-columns: repeat(4,1fr); position: fixed; z-index: 60; bottom: 0; left: 0; right: 0; padding: 0.6rem 0.5rem calc(0.6rem + env(safe-area-inset-bottom)); background: #fffefa; border-top: 1px solid var(--dr-rule); box-shadow: 0 -4px 18px rgb(24 43 54 / 4%); }
  .dr-mobile-dock a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.3rem; min-height: 44px; color: #5e675d; text-decoration: none; font-size: 0.75rem; }
  .dr-mobile-dock a[aria-current] { color: var(--dr-moss); font-weight: 700; }
  .dr-mobile-dock svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linejoin: round; stroke-linecap: round; }
  .dr-home .sim-header h3 { font-size: 1.4rem; }
  .dr-home .sim-grid { grid-template-columns: 1fr; gap: 1.25rem; }
  .dr-home .sim-results-banner { grid-template-columns: 1fr; gap: 1.4rem; }
  .dr-home .cards-grid { grid-template-columns: 1fr; }
  .dr-home .card { padding: 1.25rem; min-width: 0; }
  .dr-home .radar-preview-section .section-header { align-items: flex-start; flex-direction: column; }
  .dr-home #home-radar-preview-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { .dr-feature-story { transform: none; } }
@media print { .dr-mobile-dock, .dr-mobile-menu, .dr-feature-story { display: none; } body.dr-home, body.dr-en-home { padding-bottom: 0; } }
