/* V2 polish: one aligned header row, neutral climate, direct sharing. */
.hero-header { align-items: center; }
.hero-header .header-actions { display: flex; align-items: center; gap: 1.15rem; }
.hero-header .creator-link { display: grid; min-height: 3.15rem; align-content: center; justify-items: end; line-height: 1.25; }
.hero-header .brand { max-width: none; }
.brand-logo { display: block; width: auto; height: clamp(2rem, 2.5vw, 2.55rem); max-width: min(15rem, 22vw); filter: brightness(0); }
.hero-header .utility-actions { display: flex; height: 3.15rem; align-items: center; gap: .6rem; }
.header-live-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  height: 3.15rem;
  min-height: 3.15rem;
  box-sizing: border-box;
  padding: 0 1rem;
  border: 1px solid var(--line, rgba(11,48,39,.16));
  border-radius: 999px;
  color: var(--ink, #0b3027);
  font-size: .58rem;
  font-weight: 760;
  letter-spacing: .13em;
  text-decoration: none;
}
.header-live-link i { width: .48rem; height: .48rem; border-radius: 50%; background: #ff3b30; box-shadow: 0 0 0 .25rem rgba(255,59,48,.1); }
.header-live-link.is-offline i { background: #82928c; box-shadow: none; animation: none; }
.header-live-link:hover { background: rgba(168,221,201,.18); }
.header-live-link .live-label-short { display: none; }
.refresh-button { display: none !important; }
.refresh-label { display: none; }
.hero-footer .refresh-status { display: none !important; }

/* Preserve the generous numeral weight while giving the decimal comma room to breathe. */
.flow-number { font-kerning: normal; font-feature-settings: "kern" 1, "tnum" 1; letter-spacing: -.052em !important; }

.weather-wrap { display: flex; height: 3.15rem; align-items: center; }
.weather-button { box-sizing: border-box; height: 3.15rem !important; min-height: 3.15rem !important; margin: 0 !important; padding-inline: 1rem !important; }
.weather-button > .weather-button-icon { display: none; }
.weather-neutral-icon { display: grid; width: 1.1rem; height: 1.1rem; place-items: center; flex: 0 0 auto; }
.weather-neutral-icon svg { width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.weather-button > span:not(.weather-neutral-icon) { display: none; }
.weather-button::after { color: #527268; content: "CLIMA EM FOZ"; font-size: .54rem; font-weight: 720; letter-spacing: .1em; }
.weather-local-note { margin: .9rem 0 0; padding-top: .8rem; border-top: 1px solid rgba(11,48,39,.12); color: #587269; font-size: .68rem; line-height: 1.45; }

.flow-sticky { display: none !important; }
.scroll-share { position: fixed; z-index: 90; right: 1.15rem; bottom: calc(1.15rem + env(safe-area-inset-bottom)); display: inline-flex; align-items: center; gap: .55rem; padding: .85rem 1rem; border: 1px solid rgba(168,221,201,.38); border-radius: 999px; background: rgba(7,55,45,.94); color: #eff7f2; box-shadow: 0 1rem 2.5rem rgba(3,30,24,.22); cursor: pointer; font-size: .55rem; font-weight: 760; letter-spacing: .12em; opacity: 0; pointer-events: none; transform: translateY(.75rem); transition: opacity .22s ease, transform .25s ease; -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px); }
.scroll-share.is-visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.scroll-share svg { width: 1.05rem; height: 1.05rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.scroll-share:hover { background: #0b4035; transform: translateY(-2px); }

.share-toast { position: fixed; z-index: 130; bottom: calc(1.2rem + env(safe-area-inset-bottom)); left: 50%; margin: 0; padding: .75rem 1rem; border-radius: 999px; background: #0b3027; color: #eff7f2; font-size: .64rem; font-weight: 700; letter-spacing: .08em; opacity: 0; pointer-events: none; transform: translate(-50%, .7rem); transition: opacity .2s ease, transform .2s ease; }
.share-toast.is-visible { opacity: 1; transform: translate(-50%, 0); }
@media (max-width: 640px) {
  .flow-number { letter-spacing: -.048em !important; }
  .brand-logo { width: auto; height: 1.85rem; max-width: 8.2rem; }
  .hero-header .header-actions { gap: .55rem; }
  .hero-header .utility-actions { height: 3.15rem; gap: .45rem; }
  .hero-header .creator-link { min-height: 3.15rem; }
  .header-live-link { width: 4rem; height: 3.15rem; min-height: 3.15rem; padding: 0 .55rem; border-radius: 999px; gap: .35rem; }
  .header-live-link span { font-size: .5rem; letter-spacing: .1em; }
  .header-live-link .live-label-long { display: none; }
  .header-live-link .live-label-short { display: inline; }
  .weather-button::after { display: none; }
  .weather-neutral-icon { width: 1.05rem; height: 1.05rem; }
  .scroll-share { width: 3.35rem; height: 3.35rem; right: .9rem; bottom: calc(.9rem + env(safe-area-inset-bottom)); justify-content: center; padding: 0; }
  .scroll-share span { display: none; }
}

@media (prefers-reduced-motion: reduce) { .scroll-share { transition: none; } }

/* The guide becomes a lighter editorial chapter after the data-heavy history. */
.history-section { padding-bottom: 0 !important; }
.about-section,
.source-footer {
  position: relative;
  z-index: 1;
  background: var(--paper, #f1f3ed);
  box-shadow: 0 0 0 100vmax var(--paper, #f1f3ed);
  clip-path: inset(0 -100vmax);
}
.about-section {
  margin-top: clamp(3.5rem, 6vw, 5.5rem) !important;
  padding: 0 0 clamp(3rem, 6vw, 5.5rem) !important;
  border-top: 0 !important;
  color: var(--ink, #0b3027);
}
.about-section .eyebrow { color: #4d7b6b !important; }
.about-section > header {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 0 !important;
  padding-top: clamp(3rem, 6vw, 5.5rem);
}
.about-section > header .eyebrow,
.about-section > header h2,
.about-section > header > p:last-child { grid-column: 1 / -1; }
.about-section > header h2 {
  max-width: 15ch;
  color: var(--ink, #0b3027) !important;
  font-size: clamp(3.1rem, 6.2vw, 7rem) !important;
  line-height: .9 !important;
}
.about-section > header > p:last-child { max-width: 54rem; margin-top: clamp(1.6rem, 3vw, 2.5rem) !important; color: #527268 !important; }
.editorial-photo-slot {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin: 0;
  background:
    radial-gradient(circle at 78% 18%, rgba(183, 235, 215, .18) 0 10%, transparent 10.3%),
    linear-gradient(135deg, #0b3b31 0%, #062d25 100%);
  color: #f1f3ed;
}
.editorial-photo-slot::before,
.editorial-photo-slot::after {
  position: absolute;
  z-index: -1;
  width: 76%;
  aspect-ratio: 1;
  border: 1px solid rgba(210, 239, 227, .14);
  border-radius: 50%;
  content: "";
}
.editorial-photo-slot::before { right: -29%; bottom: -72%; }
.editorial-photo-slot::after { right: -15%; bottom: -88%; }
.editorial-photo-orbit {
  position: absolute;
  right: 7%;
  top: 12%;
  width: .42rem;
  height: .42rem;
  border-radius: 50%;
  background: #78d3b2;
  box-shadow: 3rem 2.3rem 0 rgba(188, 226, 212, .28), -1.6rem 4.2rem 0 rgba(188, 226, 212, .18);
}
.editorial-photo-slot figcaption {
  position: absolute;
  z-index: 2;
  left: clamp(1.25rem, 3vw, 2.5rem);
  bottom: clamp(1.2rem, 3vw, 2.25rem);
  display: grid;
  gap: .45rem;
}
.editorial-photo-slot figcaption span {
  color: #8eddbf;
  font-size: .56rem;
  font-weight: 760;
  letter-spacing: .18em;
}
.editorial-photo-slot figcaption strong {
  max-width: 13ch;
  font-size: clamp(1.75rem, 4vw, 4.2rem);
  font-weight: 560;
  letter-spacing: -.065em;
  line-height: .9;
}
.editorial-photo-slot > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.22, 1, .36, 1), filter .4s ease;
}
.editorial-photo-slot::after {
  z-index: 1;
  inset: auto 0 0;
  width: auto;
  height: 58%;
  aspect-ratio: auto;
  border: 0;
  border-radius: 0;
  background: linear-gradient(180deg, transparent, rgba(3, 30, 24, .72));
}
.editorial-photo-slot:not(.editorial-photo-panorama):hover > img { transform: scale(1.018); }
.flow-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
}
.hero-header,
.hero-content { position: relative; z-index: 2; }
.hero-panorama {
  position: absolute;
  z-index: 0;
  inset: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  overflow: hidden;
  opacity: .44;
  pointer-events: none;
}
.hero-panorama::after {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(241, 243, 237, .97) 0%, rgba(241, 243, 237, .9) 42%, rgba(241, 243, 237, .58) 72%, rgba(241, 243, 237, .4) 100%),
    linear-gradient(180deg, rgba(241, 243, 237, .56) 0%, rgba(241, 243, 237, .12) 45%, rgba(241, 243, 237, .8) 100%);
  content: "";
}

.hero-panorama img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 46%;
  filter: saturate(.88) contrast(.98);
}
.hero-panorama picture { display: block; width: 100%; height: 100%; }
.flow-statement,
.flow-tools,
.hero-footer { position: relative; z-index: 1; }
.flow-statement { text-shadow: 0 1px 0 rgba(241, 243, 237, .34); }
.editorial-photo-panorama {
  width: 100vw;
  max-height: none;
  height: clamp(19rem, 35vw, 32rem);
  margin: 0 0 0 calc(50% - 50vw);
  border-radius: 0;
  box-shadow: none;
}
.editorial-photo-panorama::before,
.editorial-photo-panorama::after { display: none; }
.editorial-photo-panorama > img {
  position: absolute;
  inset: -3rem 0;
  width: 100%;
  height: calc(100% + 6rem);
  object-position: center 52%;
  transform: translate3d(0, var(--guide-parallax-y, 0), 0) scale(1.03);
  will-change: transform;
}
.country-guides { gap: 1rem !important; margin-top: clamp(2.6rem, 5vw, 4rem) !important; background: transparent !important; }
.country-guides article {
  min-height: 20rem !important;
  overflow: hidden;
  padding: 0 !important;
  border: 1px solid rgba(11, 48, 39, .13);
  border-radius: 1.15rem;
  background: rgba(255, 255, 255, .74) !important;
  box-shadow: 0 1rem 2.5rem rgba(7, 55, 45, .05);
}
.editorial-photo-country {
  width: 100%;
  aspect-ratio: 16 / 8.5;
  flex: 0 0 auto;
}
.editorial-photo-country figcaption { left: 1.4rem; bottom: 1.25rem; gap: .3rem; }
.editorial-photo-country figcaption strong { font-size: clamp(1.3rem, 2.3vw, 2.1rem); }
.editorial-photo-country[data-photo-slot="brasil"] > img { object-position: center 57%; }
.editorial-photo-country[data-photo-slot="argentina"] > img { object-position: center 48%; }
.country-guide-content {
  display: flex;
  min-height: 20rem;
  flex: 1;
  flex-direction: column;
  padding: clamp(1.4rem, 3vw, 2.4rem);
}
.country-guide-content > a { margin-top: auto; }
.country-guides article:hover { background: #ffffff !important; }
.country-guides article > span,
.country-guides a,
.country-guides a .link-icon { color: #1d8b67 !important; }
.country-guides h3 { color: var(--ink, #0b3027) !important; }
.country-guides p { color: #527268 !important; }
.country-guides a .link-icon { border-color: rgba(11, 48, 39, .18) !important; }
.about-faq { margin-top: clamp(2.8rem, 5vw, 4.5rem) !important; border-top-color: rgba(11, 48, 39, .16) !important; }
.about-faq details { border-bottom-color: rgba(11, 48, 39, .14) !important; }
.about-faq summary { color: var(--ink, #0b3027) !important; }
.about-faq summary:after { border-color: rgba(11, 48, 39, .2) !important; color: #1d8b67 !important; }
.about-faq summary:hover { color: #1d8b67 !important; }
.about-faq details p { color: #527268 !important; }

.source-footer {
  display: grid;
  gap: 0;
  margin-top: 0 !important;
  padding: clamp(3.5rem, 7vw, 6.5rem) 0 clamp(2.5rem, 5vw, 4.5rem) !important;
  border-top: 0 !important;
  background: #041f1a;
  box-shadow: 0 0 0 100vmax #041f1a;
  color: #eff7f2;
}
.footer-links {
  position: relative;
  isolation: isolate;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  padding: clamp(2rem, 4vw, 3rem) 0 !important;
  border-top: 1px solid rgba(168, 221, 201, .15);
  border-bottom: 1px solid rgba(168, 221, 201, .15);
}
.footer-links > p:first-child { margin-bottom: 1rem !important; color: #a8ddc9 !important; }
.footer-links-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; gap: .6rem !important; border: 0 !important; background: transparent !important; }
.footer-links-grid > a {
  min-height: 5.25rem !important;
  padding: 1rem !important;
  border: 1px solid rgba(168, 221, 201, .18);
  border-radius: .9rem;
  background: rgba(239, 247, 242, .055) !important;
  color: #eff7f2 !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}
.footer-links-grid > a:hover { border-color: rgba(168, 221, 201, .42); background: rgba(239, 247, 242, .1) !important; transform: translateY(-2px); }
.footer-links-grid small { color: rgba(239, 247, 242, .56) !important; }
.footer-links-grid .link-icon { color: #a8ddc9 !important; }
.footer-signature {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 1.5rem;
  padding-top: 1.45rem;
}
.footer-creator span,
.footer-source span { color: rgba(239, 247, 242, .48) !important; }
.footer-creator strong { color: #eff7f2 !important; }
.footer-creator a { color: #a8ddc9 !important; }
.footer-source { display: flex; max-width: 32rem; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .55rem 1.1rem; text-align: right; }
.panorama-credit, .partner-note { display: none !important; }
.footer-site-nav { display: grid; gap: .85rem; padding: 1.35rem 0; border-bottom: 1px solid rgba(168, 221, 201, .15); }
.footer-site-nav > span { color: rgba(239, 247, 242, .46); font-size: .5rem; font-weight: 760; letter-spacing: .16em; }
.footer-site-nav > div { display: flex; flex-wrap: wrap; gap: .65rem 1.3rem; }
.footer-site-nav a { color: #eff7f2; font-size: .57rem; font-weight: 760; letter-spacing: .1em; text-decoration: none; }
.footer-site-nav a:hover { color: #a8ddc9; }

.footer-brand-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 2rem;
  padding: 0 0 clamp(2rem, 4vw, 3rem);
}
.footer-brand-logo { display: inline-flex; width: min(11.5rem, 36vw); opacity: .92; }
.footer-brand-logo img { display: block; width: 100%; height: auto; filter: brightness(0) invert(1); }
.footer-social-group { display: grid; justify-items: end; gap: .75rem; }
.footer-social-group > span { color: rgba(239, 247, 242, .48); font-size: .5rem; font-weight: 760; letter-spacing: .15em; }
.footer-socials { display: flex; gap: .55rem; }
.footer-socials a {
  display: grid;
  width: 3rem;
  height: 3rem;
  place-items: center;
  border: 1px solid rgba(168, 221, 201, .22);
  border-radius: 50%;
  color: #eff7f2;
  transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s cubic-bezier(.22, 1, .36, 1);
}
.footer-socials a:hover { border-color: rgba(168, 221, 201, .56); background: rgba(168, 221, 201, .1); color: #a8ddc9; transform: translateY(-3px); }
.footer-socials svg { width: 1.15rem; height: 1.15rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.65; }
.footer-socials .is-filled { fill: currentColor; stroke: none; }

/* Clear period extremes without making the chart louder than the current flow. */
.chart-point.is-period-high,
.chart-point.is-period-low { r: 8px; stroke: #f1f3ed; stroke-width: 3px; }
.chart-point.is-period-high { fill: #e26f58 !important; }
.chart-point.is-period-low { fill: #2b8a77 !important; }
.chart-extreme-legend { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: .75rem 1.25rem; margin-top: .85rem; color: #6a7f78; font-size: .46rem; font-weight: 720; letter-spacing: .1em; }
.chart-extreme-legend span { display: inline-flex; align-items: center; gap: .38rem; }
.chart-extreme-legend i { width: .48rem; height: .48rem; border: 2px solid #f1f3ed; border-radius: 50%; box-shadow: 0 0 0 1px rgba(11,48,39,.14); }
.chart-extreme-legend i.is-high { background: #e26f58; }
.chart-extreme-legend i.is-low { background: #2b8a77; }

/* Social sharing is a small destination chooser, never a generic file sheet. */
.social-share-modal {
  position: fixed;
  z-index: 150;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 1.25rem;
  background: rgba(3, 30, 24, .42);
  opacity: 0;
  transition: opacity .18s ease;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}
.social-share-modal.is-open { opacity: 1; }
.social-share-sheet {
  width: min(100%, 34rem);
  padding: clamp(1.3rem, 3vw, 2rem);
  border: 1px solid rgba(241, 243, 237, .28);
  border-radius: 1.4rem;
  background: #f1f3ed;
  color: #0b3027;
  box-shadow: 0 2rem 6rem rgba(3, 30, 24, .28);
  opacity: 0;
  transform: translateY(.9rem) scale(.985);
  transition: transform .24s cubic-bezier(.22, 1, .36, 1), opacity .18s ease;
}
.social-share-modal.is-open .social-share-sheet { opacity: 1; transform: translateY(0) scale(1); }
.social-share-sheet > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; padding-bottom: 1rem; border-bottom: 1px solid rgba(11, 48, 39, .13); }
.social-share-sheet header p { margin: 0 0 .38rem; color: #527268; font-size: .56rem; font-weight: 760; letter-spacing: .15em; }
.social-share-sheet h2 { margin: 0; font-size: clamp(1.45rem, 3vw, 2rem); font-weight: 680; letter-spacing: -.055em; }
.social-share-close { display: grid; width: 2.45rem; height: 2.45rem; flex: 0 0 auto; place-items: center; border: 1px solid rgba(11, 48, 39, .16); border-radius: 50%; background: transparent; color: #0b3027; cursor: pointer; font-size: 1.45rem; line-height: 1; transition: background .18s ease, transform .18s ease; }
.social-share-close:hover { background: #ffffff; transform: rotate(5deg); }
.social-share-summary { margin: 1rem 0 1.35rem; color: #527268; font-size: .86rem; line-height: 1.5; }
.social-share-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .58rem; }
.share-destination { display: grid; min-height: 7.25rem; align-content: center; justify-items: center; gap: .44rem; padding: .65rem .35rem; border: 1px solid rgba(11, 48, 39, .13); border-radius: 1rem; background: rgba(255, 255, 255, .68); color: #0b3027; cursor: pointer; text-align: center; text-decoration: none; transition: transform .2s cubic-bezier(.22, 1, .36, 1), border-color .2s ease, background .2s ease, box-shadow .2s ease; }
.share-destination:hover { border-color: rgba(29, 139, 103, .4); background: #ffffff; box-shadow: 0 .75rem 1.7rem rgba(7, 55, 45, .09); transform: translateY(-3px); }
.share-destination-icon { display: grid; width: 2.1rem; height: 2.1rem; place-items: center; border-radius: 50%; background: #07372d; color: #f1f3ed; font-family: Arial, sans-serif; font-size: .9rem; font-weight: 760; line-height: 1; }
.share-destination-icon svg { width: 1rem; height: 1rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.share-destination.is-story .share-destination-icon { background: #1d8b67; }
.share-destination.is-whatsapp .share-destination-icon { background: #168b59; }
.share-destination.is-facebook .share-destination-icon { background: #3568af; }
.share-destination.is-x .share-destination-icon { background: #0b3027; }
.share-destination.is-copy .share-destination-icon { background: #527268; }
.share-destination strong { font-size: .5rem; font-weight: 780; letter-spacing: .09em; line-height: 1.15; }
.share-destination small { color: #587269; font-size: .42rem; font-weight: 680; letter-spacing: .06em; line-height: 1.35; }
.social-share-note { margin: 1.1rem 0 0; color: #587269; font-size: .65rem; line-height: 1.45; }

/* Short, purposeful motion to make updated information feel responsive. */
.premium-reveal { opacity: 0; transform: translateY(16px); transition: opacity .56s ease var(--reveal-delay, 0ms), transform .56s cubic-bezier(.22, 1, .36, 1) var(--reveal-delay, 0ms); }
.premium-reveal.is-revealed { opacity: 1; transform: translateY(0); }
.flow-number.is-value-updated { animation: flowValueUpdated .65s cubic-bezier(.22, 1, .36, 1); }
.header-live-link i { animation: headerLivePulse 2.5s ease-out infinite; }
@keyframes flowValueUpdated { 0% { opacity: .35; transform: translateY(9px); filter: blur(2px); } 65% { opacity: 1; transform: translateY(-1px); filter: blur(0); } 100% { transform: translateY(0); } }
@keyframes headerLivePulse { 72% { box-shadow: 0 0 0 .45rem rgba(255, 59, 48, 0); } 100% { box-shadow: 0 0 0 0 rgba(255, 59, 48, 0); } }

@media (max-width: 640px) {
  .about-section { margin-top: 3rem !important; padding-top: 0 !important; }
  .about-section > header { padding-top: 2.8rem; }
  .about-section > header h2 { max-width: 12ch; font-size: clamp(2.65rem, 13vw, 4rem) !important; }
  .hero-panorama {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: .28;
  }
  .hero-panorama::after {
    background:
      linear-gradient(180deg, rgba(241, 243, 237, .78) 0%, rgba(241, 243, 237, .52) 28%, rgba(241, 243, 237, .9) 100%),
      linear-gradient(90deg, rgba(241, 243, 237, .76), rgba(241, 243, 237, .38));
  }
  .hero-panorama img { object-position: 62% center; }
  .editorial-photo-panorama { width: 100vw; height: clamp(17rem, 74vw, 25rem); margin: 0 0 0 calc(50% - 50vw); border-radius: 0; }
  .editorial-photo-slot figcaption { left: 1.15rem; bottom: 1.1rem; }
  .editorial-photo-slot figcaption strong { font-size: clamp(1.65rem, 9vw, 2.7rem); }
  .country-guides { gap: .8rem !important; }
  .country-guides article { min-height: 0 !important; padding: 0 !important; }
  .editorial-photo-country { aspect-ratio: 16 / 9; }
  .editorial-photo-country figcaption strong { font-size: 1.55rem; }
  .country-guide-content { min-height: 0; padding: 1.45rem; }
  .country-guide-content a { padding-top: 2rem !important; }
  .source-footer { padding-bottom: calc(5.5rem + env(safe-area-inset-bottom)) !important; }
  .footer-links { padding: 0; border-radius: 0; }
  .footer-links-grid { grid-template-columns: 1fr 1fr !important; gap: .55rem !important; }
  .footer-links-grid > a { min-height: 6.2rem !important; padding: .9rem !important; }
  .footer-site-nav > div { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; }
  .footer-signature { grid-template-columns: 1fr; align-items: start; }
  .footer-source { justify-content: flex-start; text-align: left; }
  .footer-brand-row { align-items: flex-start; flex-direction: column; gap: 1.5rem; }
  .footer-brand-logo { width: min(10rem, 58vw); }
  .footer-social-group { justify-items: start; }
  .chart-extreme-legend { justify-content: flex-start; }
  .social-share-modal { align-items: end; padding: 0; }
  .social-share-sheet { width: 100%; padding: 1.2rem 1rem calc(1.2rem + env(safe-area-inset-bottom)); border-radius: 1.4rem 1.4rem 0 0; }
  .social-share-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
  .share-destination { min-height: 6.4rem; }
}

@media (prefers-reduced-motion: reduce) {
  .premium-reveal, .social-share-modal, .social-share-sheet, .share-destination, .header-live-link i, .hero-panorama, .hero-panorama img, .editorial-photo-panorama > img { animation: none !important; transition: none !important; }
  .premium-reveal { opacity: 1; transform: none; }
  .editorial-photo-panorama > img { inset: 0; height: 100%; transform: none; }
}
