:root {
  --bg: #f5f7fb;
  --surface: #ffffff;
  --surface-alt: #eef3f9;
  --text: #182333;
  --muted: #5d6b7b;
  --line: #d6deea;
  --primary: #0f4d8a;
  --primary-strong: #0a3a69;
  --accent: #d89b2b;
  --danger: #b43b3b;
  --success: #157347;
  --shadow: 0 18px 45px rgba(15, 42, 74, 0.08);
  --radius: 18px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--text);
  background: var(--bg);
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.container { width: min(1380px, calc(100% - 40px)); margin: 0 auto; }
.narrow { width: min(860px, 100%); }
.section { padding: 64px 0; }
.section.alt, .page-hero { background: linear-gradient(180deg, #ffffff 0%, #eef3f9 100%); }
.page-hero { padding: 44px 0 34px; border-bottom: 1px solid var(--line); }
.eyebrow, .card-kicker, .poll-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(15, 77, 138, 0.08);
  color: var(--primary);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
}
h1, h2, h3, h4 { margin: 0 0 14px; line-height: 1.15; }
h1 { font-size: clamp(2rem, 4vw, 3.5rem); }
h2 { font-size: clamp(1.6rem, 2.7vw, 2.3rem); }
h3 { font-size: 1.1rem; }
p { margin: 0 0 14px; }
.muted { color: var(--muted); }
.small { font-size: 13px; }
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 46px;
  border: 0;
  border-radius: 12px;
  padding: 0 18px;
  cursor: pointer;
  font-weight: 700;
}
.btn-primary { background: var(--primary); color: #fff; }
.btn-primary:hover { background: var(--primary-strong); }
.btn-ghost { background: rgba(255,255,255,0.12); color: #fff; border: 1px solid rgba(255,255,255,0.25); }
.btn-small { min-height: 36px; padding: 0 12px; font-size: 13px; background: var(--surface-alt); }
.btn-danger { background: #fbe2e2; color: var(--danger); }
.flash {
  margin: 14px auto 0;
  padding: 14px 16px;
  border-radius: 14px;
  font-weight: 700;
}
.flash-success { background: #dff3e8; color: var(--success); }
.flash-error { background: #fce4e4; color: var(--danger); }

.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(255,255,255,0.95);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(214, 222, 234, 0.85);
}
.header-inner {
  display: flex;
  align-items: center;
  gap: 18px;
  min-height: 88px;
}
.brand {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}
.brand img {
  display: block;
  width: 220px;
  height: auto;
  max-height: 60px;
  object-fit: contain;
}
.main-nav { display: flex; align-items: center; justify-content: center; gap: 4px; flex: 1 1 auto; min-width: 0; flex-wrap: nowrap; }
.header-actions { display: flex; align-items: center; gap: 12px; margin-left: auto; flex: 0 0 auto; }
.visit-counter {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 7px 12px 9px;
  border-radius: 15px;
  background: linear-gradient(180deg, #162535 0%, #0a1119 100%);
  color: #fff;
  border: 1px solid rgba(216,155,43,0.45);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.14), 0 10px 28px rgba(5,14,24,0.22);
}
.visit-counter-label {
  display: block;
  font-size: 9px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .22em;
  color: #d89b2b;
  text-transform: uppercase;
  text-align: center;
}
.visit-counter-track { display: flex; gap: 4px; }
.visit-digit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 30px;
  border-radius: 8px;
  background: linear-gradient(180deg, #0b141f 0%, #1b2939 100%);
  color: #f4f8ff;
  font-weight: 900;
  font-size: 1rem;
  border: 1px solid rgba(255,255,255,0.08);
  text-shadow: 0 0 12px rgba(255,255,255,0.12);
  box-shadow: inset 0 -2px 0 rgba(0,0,0,0.22), inset 0 1px 0 rgba(255,255,255,0.08);
}
.main-nav a {
  padding: 10px 12px;
  border-radius: 10px;
  color: var(--muted);
  font-weight: 700;
  white-space: nowrap;
  font-size: .98rem;
}
.main-nav a:hover, .main-nav a.is-active { color: var(--primary); background: rgba(15,77,138,0.08); }
.nav-toggle { display: none; border: 0; background: var(--surface-alt); border-radius: 10px; width: 42px; height: 42px; }

.hero {
  padding: 24px 0 30px;
  background: radial-gradient(circle at top left, rgba(216, 155, 43, 0.20), transparent 28%), linear-gradient(120deg, #0d3660 0%, #0f4d8a 38%, #1f6fb4 100%);
  color: #fff;
}
.hero .container { width: min(1460px, calc(100% - 40px)); }
.hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(760px, 1.22fr);
  gap: 14px;
  align-items: start;
}
.hero-copy { display: flex; flex-direction: column; justify-content: flex-start; padding-top: 4px; }
.hero-copy p { color: rgba(255,255,255,0.88); font-size: 1.08rem; max-width: 52ch; }
.hero-social-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 12px;
  align-items: center;
}
.hero-social-link {
  box-shadow: none;
}
.hero-eyebrow { margin-bottom: 10px; align-self: flex-start; }
.hero .hero-eyebrow { background: rgba(216,155,43,0.18); color: #ffe2a5; border: 1px solid rgba(255,255,255,0.14); box-shadow: inset 0 1px 0 rgba(255,255,255,0.08); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 20px; }
.hero-badges { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 24px; }
.hero-badges span {
  background: rgba(255,255,255,0.14);
  padding: 9px 12px;
  border-radius: 999px;
  font-size: 13px;
  border: 1px solid rgba(255,255,255,0.18);
}
.hero-slider-card {
  position: relative;
  width: 100%;
  max-width: 780px;
  margin-left: auto;
  background: rgba(255,255,255,0.08);
  border: 1px solid rgba(255,255,255,0.18);
  border-radius: 24px;
  padding: 14px 14px 12px;
  box-shadow: var(--shadow);
  justify-self: end;
}
.hero-slide { display: none; }
.hero-slide.is-active { display: block; }
.hero-slide-media {
  border-radius: 18px;
  overflow: hidden;
  background: rgba(255,255,255,0.18);
  aspect-ratio: 16 / 9;
}
.hero-slide-media img { width: 100%; height: 100%; object-fit: contain; object-position: center center; display: block; }
.hero-slide-caption { padding: 12px 8px 2px; }
.hero-slide-caption strong { display: block; font-size: 0.98rem; line-height: 1.35; margin-bottom: 4px; }
.hero-slide-caption p { color: rgba(255,255,255,0.78); margin-bottom: 8px; font-size: 0.94rem; line-height: 1.45; }
.slide-link { color: #fff; font-weight: 700; }
.hero-slider-dots { display: flex; justify-content: center; gap: 8px; margin-top: 8px; }
.hero-dot { width: 12px; height: 12px; border-radius: 999px; border: 0; background: rgba(255,255,255,0.35); cursor: pointer; }
.hero-dot.is-active { background: #fff; }
@media (min-width: 1380px) {
  .hero-grid {
    grid-template-columns: minmax(0, 0.96fr) minmax(620px, 1.04fr);
    gap: 18px;
  }
}

.two-cols { display: grid; grid-template-columns: 1.2fr .9fr; gap: 28px; }
.align-start { align-items: start; }
.text-panel, .feature-card, .card, .list-card, .poll-box, .poll-results-card, .cardish {
  background: var(--surface);
  border-radius: var(--radius);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}
.text-panel { padding: 28px; }
.text-panel-spacious { padding: 34px; }
.feature-card { overflow: hidden; }
.feature-card img { width: 100%; height: 240px; object-fit: cover; }
.feature-card div { padding: 22px; }
.feature-highlight { background: #fff; }
.static-media-card img { height: auto; min-height: 320px; object-fit: cover; }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 22px; }
.left-head { margin-bottom: 18px; }
.cards-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.card-media { height: 210px; overflow: hidden; border-bottom: 1px solid var(--line); }
.card-media img { width: 100%; height: 100%; object-fit: cover; }
.card-body { padding: 20px; }
.card-body p, .rich-text { color: var(--muted); }
.meta { color: var(--muted); font-size: 13px; font-weight: 700; }
.gallery-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.large-gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gallery-preview-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.gallery-preview-item {
  overflow: hidden;
  border-radius: 18px;
  background: var(--surface);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}
.gallery-preview-item img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.gallery-preview-item figcaption { padding: 12px 14px; font-weight: 700; }
.gallery-item {
  overflow: hidden;
  border-radius: 16px;
  background: var(--surface);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}
.gallery-item img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.gallery-item figcaption { padding: 12px 14px; font-weight: 700; }
.list-stack { display: grid; gap: 16px; }
.list-card { padding: 20px; }
.enhanced-list-card a { color: var(--primary); font-weight: 700; }
.poll-shell { display: grid; grid-template-columns: 1fr; gap: 22px; }
.poll-form { margin-top: 18px; }
.poll-options { display: grid; gap: 12px; margin-bottom: 20px; }
.poll-option {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 15px 16px;
  border-radius: 14px;
  border: 1px solid var(--line);
  background: var(--surface-alt);
}
.poll-option input { transform: scale(1.1); }
.poll-results { display: grid; gap: 14px; }
.poll-result-head { display: flex; justify-content: space-between; gap: 16px; align-items: center; font-size: 14px; }
.progress-bar {
  width: 100%;
  height: 12px;
  border-radius: 999px;
  background: #dfe8f3;
  overflow: hidden;
}
.progress-bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--accent), var(--primary));
}

.helper-text { margin-top: -2px; font-size: 13px; color: var(--muted); }

.form-section-title {
  margin: 8px 0 16px;
  font-size: 1rem;
  font-weight: 800;
  color: var(--primary-strong);
  letter-spacing: .02em;
}
.poll-tag { margin-bottom: 14px; }
.poll-box h2 { margin-bottom: 16px; }
.poll-results-card { padding: 28px; }
.poll-results-card h3 { margin-bottom: 0; }
.poll-results { margin-top: 14px; }
.poll-result-item {
  padding: 16px 18px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--surface-alt);
}
.poll-result-item:last-child { margin-bottom: 0; }
.poll-result-head {
  flex-wrap: wrap;
  margin-bottom: 10px;
}
.poll-result-head strong { white-space: nowrap; }
.poll-box .btn { margin-top: 4px; }
.video-embed-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.video-card-embedded { overflow: hidden; }
.video-frame-shell { background: #091521; }
.video-frame-shell iframe, .compact-video-frame iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border: 0;
}
.fallback-video-thumb { height: 260px; }
.home-video-stack { display: grid; gap: 18px; }
.compact-video-card { overflow: hidden; }
.compact-video-frame { background: #091521; }
.gallery-carousel {
  display: grid;
  gap: 18px;
}
.gallery-carousel-main {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  background: linear-gradient(180deg, #10263f 0%, #0b1724 100%);
  border: 1px solid rgba(216,155,43,0.28);
  box-shadow: var(--shadow);
  min-height: 540px;
}
.gallery-stage {
  display: none;
  position: relative;
  min-height: 540px;
}
.gallery-stage.is-active { display: block; }
.gallery-stage img {
  width: 100%;
  height: 540px;
  object-fit: cover;
}
.gallery-stage figcaption {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  display: grid;
  gap: 4px;
  padding: 18px 20px;
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(5,12,20,0.18) 0%, rgba(5,12,20,0.82) 100%);
  color: #fff;
}
.gallery-stage figcaption strong { font-size: 1.15rem; }
.gallery-stage figcaption span { color: rgba(255,255,255,0.8); }
.gallery-control {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  height: 50px;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,0.14);
  color: #fff;
  font-size: 2rem;
  cursor: pointer;
  backdrop-filter: blur(12px);
}
.gallery-control.prev { left: 18px; }
.gallery-control.next { right: 18px; }
.gallery-thumbs {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 12px;
}
.gallery-thumb {
  border: 1px solid var(--line);
  background: var(--surface);
  border-radius: 16px;
  overflow: hidden;
  cursor: pointer;
  padding: 0;
  box-shadow: var(--shadow);
}
.gallery-thumb img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.gallery-thumb span {
  display: block;
  padding: 10px 12px;
  font-weight: 700;
  color: var(--text);
}
.gallery-thumb.is-active { border-color: var(--primary); box-shadow: 0 0 0 2px rgba(15,77,138,0.16), var(--shadow); }

.site-footer {
  background: #0f1e30;
  color: rgba(255,255,255,0.82);
  padding: 42px 0;
  margin-top: 30px;
}
.footer-grid { display: grid; grid-template-columns: 1.2fr .9fr .9fr; gap: 28px; }
.footer-logo { height: 42px; margin-bottom: 14px; }
.site-footer h4 { color: #fff; margin-bottom: 12px; }
.site-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.site-footer a { color: rgba(255,255,255,0.82); }
.site-footer a:hover { color: #fff; }

.footer-social-wrap {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,0.12);
}
.footer-social-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.admin-auth-body, .admin-body { background: #eef3f9; }
.admin-auth-card {
  width: min(460px, calc(100% - 32px));
  margin: 70px auto;
  background: var(--surface);
  border-radius: 20px;
  padding: 28px;
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}
.auth-logo { height: 54px; margin-bottom: 16px; }
.admin-login-form { display: grid; gap: 12px; }
.admin-login-form input,
.admin-form input,
.admin-form textarea,
.admin-form select {
  width: 100%;
  min-height: 46px;
  border: 1px solid #c8d4e4;
  border-radius: 12px;
  padding: 12px 14px;
  background: #fff;
  font: inherit;
}
.admin-form textarea { min-height: 120px; resize: vertical; }
.admin-shell { display: grid; grid-template-columns: 280px minmax(0, 1fr); min-height: 100vh; }
.admin-sidebar {
  background: #10263f;
  color: rgba(255,255,255,0.82);
  padding: 24px 18px;
  position: sticky;
  top: 0;
  height: 100vh;
}
.admin-logo { height: 40px; margin-bottom: 18px; }
.admin-user {
  padding: 12px 14px;
  background: rgba(255,255,255,0.08);
  border-radius: 12px;
  margin-bottom: 18px;
  font-weight: 700;
}
.admin-sidebar nav { display: grid; gap: 8px; }
.admin-sidebar nav a {
  color: rgba(255,255,255,0.82);
  padding: 12px 14px;
  border-radius: 12px;
  font-weight: 700;
}
.admin-sidebar nav a:hover, .admin-sidebar nav a.is-active { background: rgba(255,255,255,0.12); color: #fff; }
.admin-main { padding: 26px; }
.stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: 20px 0 28px; }
.stat-card {
  padding: 22px;
  background: var(--surface);
  border-radius: 18px;
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}
.stat-card span { display: block; color: var(--muted); margin-bottom: 10px; }
.stat-card strong { font-size: 2rem; }
.admin-columns { display: grid; grid-template-columns: minmax(320px, 430px) minmax(0, 1fr); gap: 24px; align-items: start; }
.messages-layout { grid-template-columns: 1.2fr .8fr; }
.cardish { padding: 22px; }
.admin-form { display: grid; gap: 12px; }
.form-grid { display: grid; gap: 14px; }
.form-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.compact-grid { align-items: end; }
.span-2 { grid-column: span 2; }
.checkbox-wrap { display: flex; align-items: center; min-height: 46px; }
.checkbox-wrap label { display: flex; gap: 10px; align-items: center; font-weight: 700; }
.checkbox-wrap input { width: auto; min-height: auto; }
.table-wrap {
  overflow: auto;
  border: 1px solid var(--line);
  border-radius: 16px;
}
table { width: 100%; border-collapse: collapse; background: #fff; }
th, td { padding: 14px 12px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
th { background: #f1f5fb; font-size: 13px; text-transform: uppercase; letter-spacing: .04em; }
.actions-cell { display: flex; flex-wrap: wrap; gap: 8px; }
.actions-cell form { margin: 0; }
.truncate-cell { max-width: 280px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.detail-box {
  padding: 16px;
  border-radius: 14px;
  background: var(--surface-alt);
  border: 1px solid var(--line);
}
.badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 74px;
  min-height: 28px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 700;
}
.badge-info { background: #dfefff; color: var(--primary); }
.badge-warning { background: #fff0cf; color: #946200; }
.badge-error { background: #fde2e2; color: var(--danger); }


.contact-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 12px; }
.back-inline { color: var(--primary); }
.floating-actions {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 120;
  display: grid;
  gap: 12px;
  justify-items: end;
}
.back-to-top {
  width: 46px;
  height: 46px;
  border-radius: 999px;
  background: linear-gradient(180deg, #153c67 0%, #0c2642 100%);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  font-weight: 900;
  box-shadow: 0 14px 28px rgba(9, 28, 48, 0.22);
  opacity: 0;
  pointer-events: none;
  transform: translateY(10px);
  transition: opacity .22s ease, transform .22s ease;
}
.back-to-top.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}
.whatsapp-widget { position: relative; }
.whatsapp-trigger {
  min-height: 48px;
  border: 0;
  border-radius: 999px;
  padding: 0 18px;
  background: linear-gradient(180deg, #1ebc61 0%, #128c4a 100%);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 16px 32px rgba(18, 140, 74, 0.25);
}
.whatsapp-popup {
  position: absolute;
  right: 0;
  bottom: calc(100% + 12px);
  width: min(320px, calc(100vw - 32px));
  background: #fff;
  border: 1px solid rgba(18, 140, 74, 0.18);
  border-radius: 18px;
  padding: 18px 18px 16px;
  box-shadow: 0 22px 50px rgba(8, 27, 45, 0.18);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .22s ease, transform .22s ease, visibility .22s ease;
}
.whatsapp-widget.is-open .whatsapp-popup {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.whatsapp-badge {
  display: inline-flex;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgba(30, 188, 97, 0.12);
  color: #128c4a;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .12em;
  margin-bottom: 10px;
}
.whatsapp-popup strong { display: block; font-size: 1.05rem; margin-bottom: 8px; }
.whatsapp-popup p { color: var(--muted); margin-bottom: 14px; }
.whatsapp-close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 32px;
  height: 32px;
  border: 0;
  background: var(--surface-alt);
  border-radius: 999px;
  cursor: pointer;
  font-size: 1.1rem;
}
.whatsapp-link-btn { width: 100%; }

@media (max-width: 1280px) {
  .brand img { width: 190px; }
  .main-nav a { padding: 9px 10px; font-size: .94rem; }
  .visit-counter-label { display: block; font-size: 8px; letter-spacing: .18em; }
}

@media (max-width: 1080px) {
  .hero-grid, .two-cols, .cards-grid, .gallery-grid, .large-gallery-grid, .footer-grid, .admin-columns, .messages-layout, .stats-grid, .video-embed-grid, .gallery-preview-strip {
    grid-template-columns: 1fr 1fr;
  }
  .hero {
    min-height: auto;
    padding: 26px 0 44px;
  }
  .hero .container { width: min(1380px, calc(100% - 32px)); }
  .header-inner { display: grid; grid-template-columns: auto 1fr auto; }
  .brand img { width: 170px; }
  .main-nav { justify-content: flex-end; overflow-x: auto; }
  .header-actions { justify-self: end; }
  .hero-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar { position: relative; height: auto; }
}
@media (max-width: 780px) {
  .main-nav {
    position: absolute;
    right: 16px;
    top: calc(100% + 10px);
    display: none;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 12px;
    min-width: 240px;
    box-shadow: var(--shadow);
  }
  .main-nav.is-open { display: flex; }
  .nav-toggle { display: inline-flex; align-items: center; justify-content: center; }
  .header-inner { min-height: 78px; grid-template-columns: auto auto; gap: 10px; }
  .brand img { width: 150px; max-height: 52px; }
  .visit-counter { padding: 7px 8px 8px; gap: 4px; }
  .visit-counter-label { display: block; font-size: 7px; letter-spacing: .16em; }
  .visit-digit { width: 22px; height: 28px; font-size: .86rem; }
  .two-cols, .cards-grid, .gallery-grid, .large-gallery-grid, .footer-grid, .admin-columns, .messages-layout, .stats-grid, .form-grid.two, .video-embed-grid, .gallery-preview-strip {
    grid-template-columns: 1fr;
  }
  .gallery-carousel-main, .gallery-stage, .gallery-stage img { min-height: 320px; height: 320px; }
  .gallery-stage figcaption { left: 14px; right: 14px; bottom: 14px; }
  .span-2 { grid-column: auto; }
  .hero {
    padding: 20px 0 32px;
    min-height: auto;
  }
  .hero-copy {
    order: 1;
    padding-top: 0;
  }
  .hero-slider-card {
    order: 2;
    padding: 12px;
    border-radius: 22px;
    max-width: 100%;
    margin-left: 0;
    justify-self: stretch;
  }
  .hero-slide-media {
    aspect-ratio: 16 / 9;
  }
  .hero-social-row {
    gap: 6px;
    margin: 0 0 10px;
  }
  .hero-social-link {
    width: 36px;
    height: 36px;
    border-radius: 11px;
  }
  .hero-social-link .social-icon,
  .hero-social-link .social-icon svg {
    width: 18px;
    height: 18px;
  }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .admin-main { padding: 18px; }
  .truncate-cell { max-width: 180px; }
  .floating-actions { right: 14px; bottom: 14px; }
  .whatsapp-trigger { min-height: 44px; padding: 0 16px; }
}


.single-column { grid-template-columns: 1fr; }
.account-form-card { max-width: 760px; }
.video-inline-warning {
  display: inline-flex;
  padding: 10px 12px;
  border-radius: 12px;
  background: #fff4d8;
  color: #7a5a12;
  font-size: 14px;
  font-weight: 700;
}
.cookie-notice {
  position: fixed;
  left: 20px;
  right: 20px;
  bottom: 20px;
  z-index: 120;
  transition: opacity .25s ease, transform .25s ease;
}
.cookie-notice.is-hidden {
  opacity: 0;
  pointer-events: none;
  transform: translateY(16px);
}
.cookie-notice-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 22px;
  border-radius: 18px;
  background: rgba(14, 27, 43, 0.96);
  color: #fff;
  border: 1px solid rgba(216,155,43,0.35);
  box-shadow: 0 22px 44px rgba(8,16,26,0.28);
}
.cookie-notice-inner strong { display: block; margin-bottom: 6px; }
.cookie-notice-inner p { margin: 0; color: rgba(255,255,255,0.84); }
.cookie-notice-btn { white-space: nowrap; }
@media (max-width: 900px) {
  .cookie-notice-inner {
    flex-direction: column;
    align-items: flex-start;
  }
  .cookie-notice-btn {
    width: 100%;
  }
}


.social-section-wrap {
  padding-top: 18px;
}
.social-section-card {
  padding: 28px;
  border-radius: 28px;
  background: linear-gradient(180deg, #ffffff 0%, #f5f8fc 100%);
  border: 1px solid var(--line);
  box-shadow: var(--shadow);
}
.social-head {
  justify-content: flex-start;
}
.social-lead {
  margin-bottom: 0;
  font-size: 1rem;
}
.social-eyebrow {
  margin-bottom: 14px;
}
.social-icons-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 16px;
}
.social-icon-link {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(15, 77, 138, 0.18);
  box-shadow: none;
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease, color .18s ease;
}
.social-icon-link:hover {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(15,77,138,0.35);
}
.social-icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--primary);
}
.social-icon svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 1.7;
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.social-icon-youtube { color: #d62828; }
.social-icon-instagram, .social-icon-instagram2 { color: #d9468b; }
.social-icon-facebook { color: #1877f2; }
.social-icon-tiktok { color: #111827; }
.social-icon-kwai { color: #ff6b00; }
.social-icon-x { color: #111827; }
.social-icon-email { color: #0f4d8a; }
.social-icon-wikipedia { color: #374151; }
.hero-social-row .social-icon-link {
  flex: 0 0 auto;
}
.hero-social-row .social-icon-link {
  width: 38px;
  height: 38px;
  background: rgba(255,255,255,0.10);
  border-color: rgba(255,255,255,0.46);
  backdrop-filter: blur(8px);
}
.hero-social-row .social-icon-link:hover {
  background: rgba(255,255,255,0.16);
  border-color: rgba(255,255,255,0.72);
}
.hero-social-row .social-icon {
  width: 17px;
  height: 17px;
  color: #ffffff;
}
.hero-social-row .social-icon svg {
  width: 17px;
  height: 17px;
}
.hero-social-row .social-icon-youtube,
.hero-social-row .social-icon-instagram,
.hero-social-row .social-icon-instagram2,
.hero-social-row .social-icon-facebook,
.hero-social-row .social-icon-tiktok,
.hero-social-row .social-icon-kwai,
.hero-social-row .social-icon-x,
.hero-social-row .social-icon-email,
.hero-social-row .social-icon-wikipedia { color: #ffffff; }
.footer-social-row .social-icon-link {
  flex: 0 0 auto;
  width: 32px;
  height: 32px;
  background: transparent;
  border-color: rgba(255,255,255,0.34);
}
.footer-social-row .social-icon-link:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.55);
}
.footer-social-row .social-icon,
.footer-social-row .social-icon svg {
  width: 14px;
  height: 14px;
}
.site-footer .footer-social-link { color: #ffffff; }
.site-footer .footer-social-link .social-icon-youtube,
.site-footer .footer-social-link .social-icon-instagram,
.site-footer .footer-social-link .social-icon-instagram2,
.site-footer .footer-social-link .social-icon-facebook,
.site-footer .footer-social-link .social-icon-tiktok,
.site-footer .footer-social-link .social-icon-kwai,
.site-footer .footer-social-link .social-icon-x,
.site-footer .footer-social-link .social-icon-email,
.site-footer .footer-social-link .social-icon-wikipedia { color: #ffffff; }

@media (max-width: 1080px) {
  .social-section-card { padding: 24px; }
}
@media (max-width: 680px) {
  .social-icon-link {
    width: 34px;
    height: 34px;
  }
  .social-icon,
  .social-icon svg {
    width: 15px;
    height: 15px;
  }
  .social-icons-grid {
    gap: 10px;
  }
  .hero-social-row .social-icon-link {
    width: 34px;
    height: 34px;
  }
  .hero-social-row .social-icon,
  .hero-social-row .social-icon svg {
    width: 15px;
    height: 15px;
  }
  .footer-social-row {
    gap: 8px;
  }
  .footer-social-row .social-icon-link {
    width: 28px;
    height: 28px;
  }
  .footer-social-row .social-icon,
  .footer-social-row .social-icon svg {
    width: 13px;
    height: 13px;
  }
}



/* Projects page refinements (scoped) */
.projects-section { padding-top: 52px; }
.projects-page-grid { align-items: stretch; }
.projects-page-grid .project-page-card {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 100%;
}
.projects-page-grid .project-cover {
  height: auto;
  aspect-ratio: 16 / 9;
  background: linear-gradient(180deg, #eef5fb 0%, #e5eef8 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.projects-page-grid .project-cover img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}
.projects-page-grid .card-body {
  padding: 22px 20px 24px;
}
.projects-page-grid .card-body h3 {
  margin-bottom: 12px;
}
.projects-page-grid .card-body p {
  margin-bottom: 12px;
}
.projects-page-grid .rich-text {
  margin-top: 10px;
  line-height: 1.75;
}
@media (max-width: 1100px) {
  .projects-page-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .projects-section { padding-top: 34px; }
  .projects-page-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

.admin-divider{margin:22px 0;border:none;border-top:1px solid rgba(15,23,42,.12)}
.admin-help{margin:-6px 0 14px;color:#64748b}
.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.bio-rich-wrap{max-width:1100px}
.bio-section-title{display:flex;align-items:center;gap:14px;font-size:1.7rem;font-weight:800;color:#22314b;margin-bottom:16px}
.bio-section-title::after{content:"";height:2px;flex:1;background:linear-gradient(90deg,#bfd3ff 0%,#c6f4d7 100%)}
.bio-top-card,.bio-card{background:#fff;border:1px solid rgba(15,23,42,.08);border-radius:22px;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.bio-top-card{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:14px 16px;align-items:start;margin-bottom:16px}
.bio-top-media img{width:180px;height:auto;aspect-ratio:1/1.05;object-fit:cover;border-radius:18px;display:block}
.bio-top-copy h3{margin:6px 0 0;font-size:2rem;color:#22314b}
.bio-card{padding:22px 28px;margin-bottom:16px}
.bio-card h3{margin:0 0 14px;font-size:1.95rem;color:#22314b}
.bio-card p{margin:0 0 12px;line-height:1.6;font-size:1.05rem;color:#4a5b78}
.bio-grid-main{display:grid;grid-template-columns:1.25fr .75fr;gap:16px}
.bio-links-col{display:grid;gap:12px}
.bio-link-btn{display:flex;align-items:center;justify-content:center;min-height:58px;padding:12px 18px;border:1px solid rgba(15,23,42,.08);border-radius:999px;background:#fff;color:#1f2d47;font-weight:800;text-decoration:none;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.bio-columns-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.bio-list{margin:0;padding-left:18px;color:#4a5b78;display:grid;gap:10px;line-height:1.55}
.bio-muted{color:#64748b;font-weight:700}
@media (max-width: 980px){.form-grid.four,.bio-grid-main,.bio-columns-three,.bio-top-card{grid-template-columns:1fr}.bio-top-media img{width:160px}.bio-card h3{font-size:1.55rem}.bio-section-title{font-size:1.45rem}}


.footer-grid-refined { align-items: start; }
.footer-brand-col p { max-width: 560px; }
.footer-nav-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.footer-nav-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.16);
  background: rgba(255,255,255,0.05);
  color: #ffffff !important;
  font-weight: 700;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.footer-nav-btn:hover {
  background: rgba(255,255,255,0.12);
  border-color: rgba(216,155,43,0.45);
  box-shadow: 0 12px 24px rgba(0,0,0,.18);
  transform: translateY(-1px);
}
.footer-contact-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}
.footer-meta {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,0.10);
  display: grid;
  gap: 8px;
}
.footer-devline,
.footer-rights,
.footer-location,
.footer-contactline {
  color: rgba(255,255,255,0.92);
}
.footer-devline {
  font-weight: 800;
  letter-spacing: .02em;
}
.footer-contactline {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.footer-contactline-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(37,211,102,.16);
  border: 1px solid rgba(37,211,102,.32);
  color: #9cf0ba;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.footer-contactline-link {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(37,211,102,.12);
  border: 1px solid rgba(37,211,102,.26);
  color: #ffffff !important;
  font-weight: 800;
  white-space: nowrap;
}
.footer-rights,
.footer-location {
  font-size: 14px;
  color: rgba(255,255,255,0.72);
}
.whatsapp-trigger {
  min-height: 40px;
  padding: 0 12px;
  font-size: 14px;
  box-shadow: 0 10px 20px rgba(18, 140, 74, 0.20);
}
@media (max-width: 980px) {
  .footer-nav-buttons { gap: 8px; }
  .footer-nav-btn {
    min-height: 36px;
    padding: 0 12px;
    font-size: 14px;
  }
  .footer-rights,
  .footer-location { font-size: 13px; }
}
@media (max-width: 680px) {
  .footer-contactline { align-items: flex-start; }
  .footer-contactline-link {
    min-height: 34px;
    padding: 0 12px;
    font-size: 13px;
  }
  .whatsapp-trigger {
    min-height: 36px;
    padding: 0 11px;
    font-size: 13px;
  }
}


/* ===== Atuação page fix ===== */
.actuation-rich-wrap{
  width:min(1200px,100%);
}
.actuation-intro-card{
  background:linear-gradient(180deg,#ffffff 0%,#f7fbff 100%);
  border:1px solid rgba(15,77,138,.10);
  border-radius:26px;
  padding:26px 28px;
  box-shadow:0 18px 44px rgba(15,42,74,.08);
  margin-bottom:18px;
  position:relative;
  overflow:hidden;
}
.actuation-intro-card::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:220px;
  height:4px;
  background:linear-gradient(90deg,#0f4d8a 0%,#23b26d 65%,#d89b2b 100%);
}
.actuation-section-title{
  font-size:1.9rem;
  line-height:1.1;
  font-weight:900;
  color:#1c2b45;
  margin:0 0 10px;
}
.actuation-intro-text{
  margin:0;
  max-width:72ch;
  color:#54647d;
  font-size:1.06rem;
}
.act-top-nav{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 22px;
}
.act-nav-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 18px;
  border-radius:999px;
  font-weight:800;
  color:#20304b;
  background:#ffffff;
  border:1px solid rgba(15,77,138,.12);
  box-shadow:0 10px 24px rgba(15,42,74,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease;
}
.act-nav-link:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 28px rgba(15,42,74,.12);
}
.act-nav-link.tone-green{ box-shadow:0 10px 24px rgba(35,178,109,.10); }
.act-nav-link.tone-blue{ box-shadow:0 10px 24px rgba(15,77,138,.10); }
.act-nav-link.tone-amber{ box-shadow:0 10px 24px rgba(216,155,43,.12); }
.act-nav-link.tone-red{ box-shadow:0 10px 24px rgba(180,59,59,.10); }
.act-nav-link.tone-purple{ box-shadow:0 10px 24px rgba(108,92,231,.10); }
.act-nav-link.tone-green:hover{ border-color:rgba(35,178,109,.35); background:rgba(35,178,109,.08); color:#157347; }
.act-nav-link.tone-blue:hover{ border-color:rgba(15,77,138,.35); background:rgba(15,77,138,.08); color:#0f4d8a; }
.act-nav-link.tone-amber:hover{ border-color:rgba(216,155,43,.42); background:rgba(216,155,43,.10); color:#8a5a00; }
.act-nav-link.tone-red:hover{ border-color:rgba(180,59,59,.35); background:rgba(180,59,59,.08); color:#9d2e2e; }
.act-nav-link.tone-purple:hover{ border-color:rgba(108,92,231,.32); background:rgba(108,92,231,.08); color:#5647c7; }
.act-cards-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.act-card{
  position:relative;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  border:1px solid rgba(15,77,138,.10);
  border-radius:28px;
  padding:26px 28px 24px;
  box-shadow:0 18px 44px rgba(15,42,74,.08);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  overflow:hidden;
}
.act-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:5px;
  background:linear-gradient(90deg,#0f4d8a 0%,#23b26d 60%,#d89b2b 100%);
}
.act-card:hover{
  transform:translateY(-4px);
  box-shadow:0 24px 54px rgba(15,42,74,.12);
}
.act-card-head{
  margin-bottom:14px;
}
.act-card-pill{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  font-size:.78rem;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:900;
  margin-bottom:12px;
}
.act-card h3{
  margin:0;
  font-size:1.7rem;
  line-height:1.12;
  color:#1c2b45;
}
.act-card-body p{
  margin:0 0 14px;
  color:#40526e;
  font-size:1.02rem;
  line-height:1.78;
}
.act-card-highlight{
  margin-top:14px;
  padding:14px 16px;
  border-radius:18px;
  font-weight:800;
  font-size:.98rem;
  line-height:1.55;
}
.act-card.tone-green::before{ background:linear-gradient(90deg,#23b26d 0%,#8bd9ae 100%); }
.act-card.tone-green .act-card-pill{ background:rgba(35,178,109,.12); color:#157347; }
.act-card.tone-green .act-card-highlight{ background:rgba(35,178,109,.08); color:#157347; }
.act-card.tone-blue::before{ background:linear-gradient(90deg,#0f4d8a 0%,#5ea8f0 100%); }
.act-card.tone-blue .act-card-pill{ background:rgba(15,77,138,.10); color:#0f4d8a; }
.act-card.tone-blue .act-card-highlight{ background:rgba(15,77,138,.08); color:#0f4d8a; }
.act-card.tone-amber::before{ background:linear-gradient(90deg,#d89b2b 0%,#f5ce74 100%); }
.act-card.tone-amber .act-card-pill{ background:rgba(216,155,43,.12); color:#8a5a00; }
.act-card.tone-amber .act-card-highlight{ background:rgba(216,155,43,.10); color:#8a5a00; }
.act-card.tone-red::before{ background:linear-gradient(90deg,#b43b3b 0%,#eb8d8d 100%); }
.act-card.tone-red .act-card-pill{ background:rgba(180,59,59,.10); color:#9d2e2e; }
.act-card.tone-red .act-card-highlight{ background:rgba(180,59,59,.08); color:#9d2e2e; }
.act-card.tone-purple::before{ background:linear-gradient(90deg,#6c5ce7 0%,#b2a7ff 100%); }
.act-card.tone-purple .act-card-pill{ background:rgba(108,92,231,.10); color:#5647c7; }
.act-card.tone-purple .act-card-highlight{ background:rgba(108,92,231,.08); color:#5647c7; }
@media (max-width: 980px){
  .act-cards-grid{ grid-template-columns:1fr; }
  .actuation-intro-card,
  .act-card{ padding:22px 20px; border-radius:22px; }
  .actuation-section-title{ font-size:1.6rem; }
  .act-card h3{ font-size:1.45rem; }
  .act-top-nav{ gap:10px; }
  .act-nav-link{ min-height:42px; padding:0 15px; font-size:.93rem; }
}


.poll-inline-feedback{
  display:grid;
  gap:6px;
  margin-top:18px;
  padding:16px 18px;
  border-radius:16px;
  border:1px solid rgba(11,94,54,.16);
  background:linear-gradient(180deg, rgba(245,250,247,.98) 0%, rgba(237,247,241,.96) 100%);
  color:#1f2d47;
}
.poll-inline-feedback strong{
  color:#0b5e36;
  font-size:1rem;
}
.poll-results-total,
.poll-comments-counter{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(12,74,133,.08);
  border:1px solid rgba(12,74,133,.12);
  color:var(--primary-strong);
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
}
.poll-comments-card{
  padding:28px;
  background:var(--surface);
  border-radius:var(--radius);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
}
.poll-comments-head{
  align-items:flex-start;
}
.poll-comments-head .section-head{
  margin-bottom:0;
}
.poll-comments-help{
  margin:6px 0 0;
}
.poll-comment-form{
  display:grid;
  gap:18px;
  margin-top:4px;
}
.poll-comment-fields{
  display:grid;
  gap:16px;
}
.poll-field{
  display:grid;
  gap:8px;
}
.poll-field label{
  font-size:14px;
  font-weight:800;
  color:var(--primary-strong);
}
.poll-field input,
.poll-field textarea{
  width:100%;
  border:1px solid var(--line);
  border-radius:16px;
  background:var(--surface-alt);
  color:var(--text);
  padding:14px 16px;
  font:inherit;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.poll-field textarea{
  min-height:148px;
  resize:vertical;
  line-height:1.65;
}
.poll-field input:focus,
.poll-field textarea:focus{
  border-color:rgba(12,74,133,.28);
  box-shadow:0 0 0 4px rgba(12,74,133,.08);
  background:#fff;
}
.poll-comment-list{
  display:grid;
  gap:14px;
  margin-top:24px;
}
.poll-comment-item{
  padding:18px 20px;
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow:0 8px 22px rgba(15,23,42,.04);
}
.poll-comment-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:10px;
}
.poll-comment-head strong{
  color:var(--primary-strong);
  font-size:15px;
}
.poll-comment-head span{
  color:var(--muted);
  font-size:13px;
  font-weight:700;
  white-space:nowrap;
}
.poll-comment-item p{
  margin:0;
  color:var(--text);
  line-height:1.72;
}
.poll-comments-empty{
  margin-top:22px;
  padding:18px 20px;
  border-radius:18px;
  border:1px dashed rgba(148,163,184,.42);
  background:rgba(248,250,252,.72);
}
@media (max-width: 720px){
  .poll-comments-card,
  .poll-results-card{
    padding:22px 18px;
  }
  .poll-comment-head,
  .poll-comments-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .poll-results-total,
  .poll-comments-counter{
    min-height:32px;
  }
}

/* ===== Propostas page ===== */
.proposals-hero{
  background: radial-gradient(circle at top left, rgba(35,178,109,.13), transparent 30%), linear-gradient(180deg,#ffffff 0%,#eef6ff 100%);
}
.proposal-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);
  gap:54px;
  align-items:center;
}
.proposal-hero-copy{max-width:720px}
.proposal-hero-audio-card{
  padding:20px 22px;
  border-radius:22px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(15,77,138,.14);
  box-shadow:0 18px 44px rgba(15,42,74,.10);
}
.proposal-hero-audio-head{display:flex;align-items:center;gap:13px;margin-bottom:8px}
.proposal-hero-audio-head strong{display:block;margin-top:3px;font-size:1.15rem;color:#1c2b45}
.proposal-hero-audio-icon{
  display:grid;
  place-items:center;
  flex:0 0 44px;
  width:44px;
  height:44px;
  border-radius:14px;
  background:var(--primary);
  color:#fff;
  font-size:1.45rem;
  font-weight:900;
}
.proposal-hero-audio-card p{margin:0 0 12px;color:var(--muted);font-size:.94rem}
.proposal-rich-wrap{ width:min(1220px,100%); }
.proposal-intro-card{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);
  gap:24px;
  align-items:stretch;
  background:linear-gradient(135deg,#0f4d8a 0%,#103c69 52%,#0e2338 100%);
  color:#fff;
  border-radius:30px;
  padding:30px;
  box-shadow:0 22px 55px rgba(15,42,74,.18);
  border:1px solid rgba(255,255,255,.14);
  overflow:hidden;
  position:relative;
  margin-bottom:18px;
}
.proposal-intro-card::after{
  content:"";
  position:absolute;
  right:-90px;
  top:-90px;
  width:260px;
  height:260px;
  border-radius:999px;
  background:rgba(216,155,43,.18);
}
.proposal-intro-card h2{
  font-size:clamp(1.8rem,3vw,2.7rem);
  max-width:780px;
}
.proposal-intro-card p{ color:rgba(255,255,255,.86); font-size:1.06rem; }
.proposal-intro-badge{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(216,155,43,.20);
  color:#ffe0a2;
  border:1px solid rgba(255,255,255,.14);
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
  margin-bottom:14px;
}
.proposal-page-content{ margin-top:12px; }
.proposal-page-content p{ margin-bottom:10px; }
.proposal-intro-panel{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:22px;
  border-radius:24px;
  background:rgba(255,255,255,.10);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
}
.proposal-intro-panel strong{ display:block; font-size:1.15rem; margin-bottom:8px; }
.proposal-intro-panel p{ margin:0 0 16px; font-size:.98rem; }
.proposal-intro-download-label{
  display:inline-flex;
  margin-bottom:8px;
  color:#ffe0a2;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.proposal-intro-download-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:14px;
  background:#ffd36b;
  color:#17314b;
  font-weight:900;
  text-decoration:none;
  box-shadow:0 10px 22px rgba(0,0,0,.14);
}
.proposal-intro-download-button:hover{background:#ffe39a;transform:translateY(-1px)}
.proposal-intro-download-meta{margin-top:9px;color:rgba(255,255,255,.72);font-size:.76rem;font-weight:800}
.proposal-intro-download-pending{display:inline-flex;padding:10px 13px;border-radius:12px;background:rgba(255,255,255,.12);color:rgba(255,255,255,.78);font-weight:800}
.proposal-download-hub{
  justify-content:flex-start;
}
.proposal-download-hub > p{
  max-width:440px;
}
.proposal-download-options{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  width:100%;
  margin-top:2px;
}
.proposal-download-option{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "head button"
    "head meta";
  column-gap:12px;
  align-items:center;
  padding:13px 14px;
  border-radius:16px;
  background:rgba(6,25,43,.22);
  border:1px solid rgba(255,255,255,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.proposal-download-option-santinho{
  background:linear-gradient(135deg,rgba(255,211,107,.12),rgba(255,255,255,.07));
}
.proposal-download-option-head{
  grid-area:head;
  min-width:0;
}
.proposal-download-option-head b{
  display:block;
  margin:2px 0 0;
  color:#fff;
  font-size:.98rem;
  line-height:1.2;
}
.proposal-download-type{
  display:block;
  color:#ffe0a2;
  font-size:.66rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.proposal-download-option .proposal-intro-download-button{
  grid-area:button;
  min-height:38px;
  padding:0 13px;
  border-radius:11px;
  font-size:.82rem;
  white-space:nowrap;
}
.proposal-download-option .proposal-intro-download-button span{
  margin-left:7px;
  font-size:1rem;
}
.proposal-download-option .proposal-intro-download-meta{
  grid-area:meta;
  margin:5px 1px 0 0;
  text-align:right;
  font-size:.67rem;
}
.proposal-download-option .proposal-intro-download-pending{
  grid-area:button / button / meta / meta;
  min-height:38px;
  align-items:center;
  justify-content:center;
  padding:0 12px;
  font-size:.76rem;
  white-space:nowrap;
}
.proposal-top-nav{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 24px;
}
.proposal-nav-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(15,77,138,.12);
  color:#1d2e47;
  font-weight:900;
  box-shadow:0 12px 26px rgba(15,42,74,.06);
}
.proposal-nav-link:hover{ transform:translateY(-2px); }
.proposal-nav-link.tone-green:hover{ background:rgba(35,178,109,.08); color:#157347; border-color:rgba(35,178,109,.32); }
.proposal-nav-link.tone-blue:hover{ background:rgba(15,77,138,.08); color:#0f4d8a; border-color:rgba(15,77,138,.32); }
.proposal-nav-link.tone-amber:hover{ background:rgba(216,155,43,.12); color:#805600; border-color:rgba(216,155,43,.38); }
.proposal-nav-link.tone-red:hover{ background:rgba(180,59,59,.08); color:#9d2e2e; border-color:rgba(180,59,59,.32); }
.proposal-nav-link.tone-purple:hover{ background:rgba(108,92,231,.08); color:#5647c7; border-color:rgba(108,92,231,.30); }
.proposal-list{ display:grid; gap:22px; }
.proposal-card{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);
  gap:22px;
  background:#fff;
  border:1px solid rgba(15,77,138,.10);
  border-radius:30px;
  padding:26px;
  box-shadow:0 20px 50px rgba(15,42,74,.08);
  position:relative;
  overflow:hidden;
}
.proposal-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:6px;
  height:100%;
  background:#23b26d;
}
.proposal-number{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(15,77,138,.08);
  color:#0f4d8a;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.78rem;
  margin-bottom:12px;
}
.proposal-card h3{
  font-size:clamp(1.55rem,2.3vw,2.2rem);
  color:#1c2b45;
}
.proposal-card-body p{
  color:#40526e;
  font-size:1.03rem;
  line-height:1.76;
  margin-bottom:14px;
}
.proposal-highlight{
  margin-top:14px;
  padding:15px 17px;
  border-radius:18px;
  font-weight:900;
  line-height:1.55;
  background:rgba(35,178,109,.08);
  color:#157347;
}
.proposal-video-box{
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(15,23,42,.08);
  background:linear-gradient(180deg,#f8fbff 0%,#eef4fb 100%);
  align-self:start;
}
.proposal-video-head{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:16px 18px;
  border-bottom:1px solid rgba(15,23,42,.08);
}
.proposal-video-head strong{ color:#1c2b45; }
.proposal-video-head span{
  display:inline-flex;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(15,77,138,.08);
  color:#0f4d8a;
  font-size:.75rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  white-space:nowrap;
}
.proposal-video-frame{ background:#091521; }
.proposal-video-frame iframe{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  border:0;
}
.proposal-video-placeholder{
  display:grid;
  place-items:center;
  min-height:250px;
  padding:24px;
  text-align:center;
  background:linear-gradient(135deg,#10263f 0%,#0b1724 100%);
  color:#fff;
}
.proposal-video-placeholder span{ font-weight:900; font-size:1.1rem; }
.proposal-video-placeholder p{ margin:8px 0 0; color:rgba(255,255,255,.76); }
.proposal-video-caption{ padding:14px 18px 16px; margin:0; color:#5b687a; font-weight:700; }
.proposal-card.tone-green::before{ background:#23b26d; }
.proposal-card.tone-green .proposal-number{ background:rgba(35,178,109,.12); color:#157347; }
.proposal-card.tone-green .proposal-highlight{ background:rgba(35,178,109,.08); color:#157347; }
.proposal-card.tone-blue::before{ background:#0f4d8a; }
.proposal-card.tone-blue .proposal-number{ background:rgba(15,77,138,.10); color:#0f4d8a; }
.proposal-card.tone-blue .proposal-highlight{ background:rgba(15,77,138,.08); color:#0f4d8a; }
.proposal-card.tone-amber::before{ background:#d89b2b; }
.proposal-card.tone-amber .proposal-number{ background:rgba(216,155,43,.12); color:#805600; }
.proposal-card.tone-amber .proposal-highlight{ background:rgba(216,155,43,.10); color:#805600; }
.proposal-card.tone-red::before{ background:#b43b3b; }
.proposal-card.tone-red .proposal-number{ background:rgba(180,59,59,.10); color:#9d2e2e; }
.proposal-card.tone-red .proposal-highlight{ background:rgba(180,59,59,.08); color:#9d2e2e; }
.proposal-card.tone-purple::before{ background:#6c5ce7; }
.proposal-card.tone-purple .proposal-number{ background:rgba(108,92,231,.10); color:#5647c7; }
.proposal-card.tone-purple .proposal-highlight{ background:rgba(108,92,231,.08); color:#5647c7; }
.proposal-admin-block{ border-left:5px solid var(--primary); }
.proposal-audio-player{display:block;width:100%;margin-top:4px}
.proposal-media-meta{display:block;margin-top:9px;color:var(--muted);font-size:.78rem;font-weight:800}
.proposal-media-pending{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;border-radius:13px;background:rgba(255,255,255,.72);color:#5c6a7b;font-weight:800}
.proposal-media-admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0 24px}
.proposal-media-admin-card{display:flex;flex-direction:column;gap:10px;border:1px solid rgba(15,77,138,.12)}
.proposal-media-admin-card h4{margin:0;font-size:1.1rem}
.admin-audio-preview{width:100%}

/* Cadastro público, download de propostas e gestão de apoiadores */
.contact-registration-section{padding-bottom:34px}
.contact-info-panel{position:sticky;top:96px}
.contact-info-panel h2,.registration-form h2,.proposal-download-card h2,.contact-message-wrap h2{margin-top:6px}
.registration-form{padding:28px;border-top:5px solid var(--primary);box-shadow:0 22px 55px rgba(15,42,74,.10)}
.registration-photo{position:relative;min-height:220px;margin:-28px -28px 20px;overflow:hidden;border-radius:19px 19px 0 0;background:linear-gradient(135deg,#0f4d8a,#123557)}
.registration-photo img{display:block;width:100%;height:250px;object-fit:cover;object-position:center 24%}
.registration-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,36,64,.04) 30%,rgba(8,31,55,.86) 100%);pointer-events:none}
.registration-photo-placeholder{display:flex;min-height:220px;align-items:center;justify-content:center;flex-direction:column;gap:5px;padding:30px;color:#fff;text-align:center}
.registration-photo-placeholder span{font-size:1.45rem;font-weight:900}
.registration-photo-placeholder small{color:rgba(255,255,255,.76)}
.registration-photo-overlay{position:absolute;z-index:1;left:24px;right:24px;bottom:20px;color:#fff}
.registration-photo-overlay span{display:block;margin-bottom:3px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#f7c844}
.registration-photo-overlay strong{display:block;font-size:1.35rem;line-height:1.15}
.registration-form-heading p{margin:6px 0 18px;color:var(--muted)}
.registration-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.registration-form textarea{min-height:92px}
.field-optional{font-size:.78rem;font-weight:700;color:var(--muted)}
.registration-submit{width:100%;margin-top:4px}
.registration-status-note{margin:0;text-align:center;color:var(--muted);font-size:.86rem}
.honeypot-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.proposal-download-section{padding-top:24px;padding-bottom:34px}
.proposal-download-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px 34px;border-radius:24px;background:linear-gradient(135deg,#f7fbff 0%,#edf5ff 100%);border:1px solid rgba(15,77,138,.14);box-shadow:0 18px 44px rgba(15,42,74,.08)}
.proposal-download-card p{margin:8px 0 0;color:var(--muted)}
.proposal-download-button{display:inline-flex;flex-direction:column;min-width:210px;white-space:nowrap}
.proposal-download-button small{font-size:.72rem;opacity:.76}
.proposal-download-pending{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:14px;background:#e8edf3;color:#58677a;font-weight:800;white-space:nowrap}
.contact-message-section{padding-top:36px}
.contact-message-wrap{max-width:920px}
.contact-message-wrap .section-heading{text-align:center;margin-bottom:22px}
.proposal-file-admin{display:grid;grid-template-columns:1.2fr .8fr;gap:26px;align-items:center;margin:20px 0}
.proposal-file-admin h2{margin-bottom:6px}
.proposal-upload-form{padding:18px;border-radius:18px;background:var(--surface-alt)}
.proposal-upload-form input[type=file]{background:#fff}
.registration-filter{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:20px 0}
.registration-filter .is-active-filter{background:var(--primary);color:#fff}
.registration-badge-voter{background:#e5f0ff;color:#0f4d8a}
.registration-badge-leader{background:#e4f6ec;color:#157347}
.registration-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
.registration-admin-editor{display:grid;grid-template-columns:minmax(270px,.72fr) minmax(520px,1.5fr);gap:22px;align-items:start;margin:22px 0}
.registration-photo-admin,.registration-admin-form{padding:24px}
.registration-photo-admin h2,.registration-admin-form h2{margin:0}
.registration-photo-admin-preview{display:flex;align-items:center;justify-content:center;min-height:205px;overflow:hidden;border-radius:18px;background:linear-gradient(135deg,#e9f2fb,#dceafb);color:var(--muted);font-weight:800}
.registration-photo-admin-preview img{display:block;width:100%;height:230px;object-fit:cover;object-position:center 24%}
.registration-admin-form-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.registration-admin-form-heading p{margin:5px 0 0}
.registration-active-check{display:flex;align-items:flex-end;padding-bottom:12px}
.registration-table-card{padding:0;overflow:hidden}
.registration-table-card table{min-width:1180px}
.registration-address{display:block;margin-top:4px;max-width:210px;color:var(--muted);font-size:.76rem;font-weight:500}
@media (max-width: 1050px){
  .proposal-hero-grid,
  .proposal-intro-card,
  .proposal-card{ grid-template-columns:1fr; }
  .proposal-card{ padding:22px; border-radius:24px; }
}
@media (max-width: 680px){
  .proposal-intro-card{ padding:22px; border-radius:24px; }
  .proposal-download-option{grid-template-columns:1fr;grid-template-areas:"head" "button" "meta";row-gap:9px}
  .proposal-download-option .proposal-intro-download-button,.proposal-download-option .proposal-intro-download-pending{width:100%}
  .proposal-download-option .proposal-intro-download-meta{text-align:left;margin-top:0}
  .proposal-video-placeholder{ min-height:210px; }
  .proposal-video-head{ align-items:flex-start; flex-direction:column; }
  .contact-info-panel{position:static}
  .registration-form{padding:22px}
  .proposal-download-card{align-items:flex-start;flex-direction:column;padding:24px}
  .proposal-download-button,.proposal-download-pending{width:100%}
  .proposal-file-admin{grid-template-columns:1fr}
  .registration-stats{grid-template-columns:1fr}
  .proposal-media-admin-grid{grid-template-columns:1fr}
  .registration-admin-editor{grid-template-columns:1fr}
}
@media (max-width: 680px){
  .registration-photo{margin:-22px -22px 18px;min-height:190px}
  .registration-photo img{height:210px}
  .registration-photo-overlay{left:18px;right:18px;bottom:16px}
  .registration-photo-overlay strong{font-size:1.15rem}
  .registration-form .form-grid{grid-template-columns:1fr}
  .registration-form .span-2{grid-column:auto}
}

/* Cabeçalho responsivo: evita que logo, contador e menu se sobreponham. */
@media (max-width: 480px) {
  .container { width: min(1380px, calc(100% - 24px)); }
  .header-inner { min-height: 72px; gap: 6px; }
  .brand img { width: 118px; max-height: 42px; }
  .header-actions { gap: 6px; }
  .visit-counter { padding: 5px 6px 6px; }
  .visit-counter-track { gap: 2px; }
  .visit-digit { width: 17px; height: 24px; font-size: .72rem; border-radius: 6px; }
  .nav-toggle { width: 38px; height: 38px; }
}

/* Atualização 14/08/2026 - Canais oficiais e WhatsApp */
.contact-info-panel{overflow:hidden}
.contact-info-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:stretch}
.contact-info-panel.has-contact-image .contact-info-layout{grid-template-columns:minmax(0,1fr) minmax(190px,34%)}
.contact-info-copy{min-width:0}
.contact-info-copy h2{margin-bottom:14px}
.contact-service-notice{margin:0 0 20px;padding:15px 16px;border-radius:16px;background:linear-gradient(135deg,#f4f8fc,#eef5fb);border:1px solid rgba(15,77,138,.11)}
.contact-service-notice strong{display:block;margin-bottom:6px;color:var(--primary-strong);font-size:.92rem}
.contact-service-notice p{margin:0;color:var(--muted);font-size:.92rem;line-height:1.6}
.contact-channel-list{display:grid;gap:4px}
.contact-channel-list p{margin:0 0 10px;overflow-wrap:anywhere}
.contact-whatsapp-action{margin:14px 0 0}
.contact-info-media{min-height:310px;margin:-28px -28px -28px 0;overflow:hidden;background:linear-gradient(180deg,#edf4fb,#dce8f4)}
.contact-info-media img{display:block;width:100%;height:100%;min-height:310px;object-fit:cover;object-position:center top}
.contact-channels-image-admin{display:grid;gap:12px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface-alt)}
.contact-channels-image-preview{width:min(100%,320px);height:190px;overflow:hidden;border-radius:14px;background:#e6edf5;border:1px solid var(--line)}
.contact-channels-image-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}

@media (max-width: 900px){
  .contact-info-panel.has-contact-image .contact-info-layout{grid-template-columns:1fr}
  .contact-info-media{min-height:260px;margin:0 -28px -28px}
  .contact-info-media img{min-height:260px;max-height:360px}
}

@media (max-width: 680px){
  .contact-info-media{margin:0 -28px -28px;min-height:230px}
  .contact-info-media img{min-height:230px}
}

/* ===== Biografia 2026 - redesign completo ===== */
.bio-page-section{
  background:
    radial-gradient(circle at 9% 6%, rgba(15,77,138,.055), transparent 24%),
    radial-gradient(circle at 92% 32%, rgba(35,178,109,.05), transparent 21%),
    #f5f8fc;
  padding-top:44px;
}
.bio-modern-wrap{width:min(1200px,100%)}
.bio-modern-wrap svg{width:1.2em;height:1.2em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.bio-profile-card{
  display:grid;
  grid-template-columns:minmax(280px,360px) 1fr;
  gap:38px;
  align-items:stretch;
  padding:28px;
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 58%,#f5fbf7 100%);
  border:1px solid rgba(15,77,138,.10);
  border-radius:30px;
  box-shadow:0 22px 56px rgba(15,42,74,.10);
  position:relative;
  overflow:hidden;
}
.bio-profile-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(90deg,#0f4d8a 0%,#23b26d 62%,#d89b2b 100%);
}
.bio-profile-card::after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  border-radius:50%;
  right:-120px;
  top:-120px;
  background:rgba(35,178,109,.055);
  pointer-events:none;
}
.bio-profile-media{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px}
.bio-profile-photo-wrap{
  min-height:390px;
  height:100%;
  overflow:hidden;
  border-radius:24px;
  background:linear-gradient(145deg,#e7eef7,#ffffff);
  border:1px solid rgba(15,77,138,.10);
  box-shadow:0 14px 34px rgba(15,42,74,.09);
}
.bio-profile-photo-wrap img{width:100%;height:100%;min-height:390px;object-fit:cover;object-position:center 18%;display:block}
.bio-photo-caption{align-self:flex-start;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:900;color:#0f4d8a;padding:6px 10px;border-radius:999px;background:rgba(15,77,138,.08)}
.bio-profile-copy{position:relative;z-index:1;padding:12px 8px 8px 0;display:flex;flex-direction:column;justify-content:center}
.bio-kicker,.bio-section-kicker,.bio-card-label{display:block;font-size:.78rem;line-height:1.2;letter-spacing:.10em;text-transform:uppercase;font-weight:900;color:#0f4d8a}
.bio-profile-copy h2{margin:8px 0 14px;font-size:clamp(2.25rem,4.2vw,4rem);line-height:.98;letter-spacing:-.045em;color:#19283f}
.bio-profile-summary{margin:0;color:#50617c;font-size:1.08rem;line-height:1.8;max-width:68ch}
.bio-profile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.bio-profile-facts>span{display:grid;grid-template-columns:28px 1fr;column-gap:8px;align-items:start;padding:14px 15px;border-radius:18px;background:rgba(255,255,255,.84);border:1px solid rgba(15,77,138,.08);color:#52647f;font-size:.89rem;line-height:1.45}
.bio-profile-facts svg{grid-row:1/3;color:#0f4d8a;margin-top:2px}
.bio-profile-facts strong{display:block;color:#233653;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px}
.bio-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.bio-metrics>div{padding:14px 16px;border-radius:18px;background:#fff;border:1px solid rgba(15,77,138,.09);box-shadow:0 8px 20px rgba(15,42,74,.045)}
.bio-metrics strong{display:block;font-size:1.65rem;line-height:1;color:#0f4d8a;margin-bottom:5px}
.bio-metrics span{display:block;color:#63738a;font-size:.82rem;font-weight:750}
.bio-top-nav{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 34px;position:relative;z-index:2}
.bio-top-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 17px;border-radius:999px;background:#fff;border:1px solid rgba(15,77,138,.11);color:#233653;font-weight:850;text-decoration:none;box-shadow:0 8px 20px rgba(15,42,74,.05);transition:all .18s ease}
.bio-top-nav a:hover{transform:translateY(-2px);border-color:rgba(15,77,138,.27);color:#0f4d8a;box-shadow:0 14px 28px rgba(15,42,74,.09)}
.bio-modern-section{scroll-margin-top:90px;margin:0 0 40px}
.bio-modern-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:18px}
.bio-modern-heading h2,.bio-links-section h2,.bio-next-page h2,.bio-commissions-intro h2{margin:5px 0 0;color:#1c2b45;font-size:clamp(1.7rem,2.5vw,2.35rem);line-height:1.08;letter-spacing:-.025em}
.bio-modern-heading>p{margin:0;max-width:48ch;color:#6a7890;line-height:1.6;font-size:.95rem;text-align:right}
.bio-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bio-info-card{position:relative;display:flex;align-items:flex-start;gap:14px;min-height:126px;padding:20px;border-radius:22px;background:#fff;border:1px solid rgba(15,77,138,.09);box-shadow:0 13px 32px rgba(15,42,74,.065);overflow:hidden}
.bio-info-card::before,.bio-feature-card::before,.bio-public-card::before,.bio-commission-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:#0f4d8a}
.bio-info-card.tone-green::before,.bio-feature-card.tone-green::before,.bio-public-card.tone-green::before,.bio-commission-card.tone-green::before{background:#23b26d}
.bio-info-card.tone-amber::before,.bio-feature-card.tone-amber::before,.bio-public-card.tone-amber::before,.bio-commission-card.tone-amber::before{background:#d89b2b}
.bio-info-icon,.bio-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:15px;background:rgba(15,77,138,.09);color:#0f4d8a;flex:0 0 auto}
.tone-green .bio-info-icon,.tone-green .bio-feature-icon{background:rgba(35,178,109,.10);color:#157347}
.tone-amber .bio-info-icon,.tone-amber .bio-feature-icon{background:rgba(216,155,43,.12);color:#8a5a00}
.bio-info-card small{display:block;color:#7b889a;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}
.bio-info-card strong{display:block;color:#233653;font-size:1rem;line-height:1.45}
.bio-info-card span:not(.bio-info-icon){display:block;color:#66758b;font-size:.86rem;margin-top:5px}
.bio-info-card-wide{grid-column:span 2}
.bio-formation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bio-feature-card,.bio-public-card,.bio-commission-card{position:relative;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%);border:1px solid rgba(15,77,138,.09);border-radius:26px;padding:24px;box-shadow:0 16px 38px rgba(15,42,74,.07);overflow:hidden}
.bio-feature-card{display:flex;gap:18px;align-items:flex-start;min-height:190px}
.bio-feature-content h3,.bio-public-card h3,.bio-commission-card h3{margin:6px 0 10px;color:#22334f;font-size:1.4rem;line-height:1.18}
.bio-feature-content p,.bio-commission-card p{margin:0;color:#596a83;line-height:1.72}
.bio-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.bio-tags span{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:rgba(35,178,109,.09);color:#157347;font-size:.88rem;font-weight:800}
.bio-career-start{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.bio-career-start article{display:flex;align-items:flex-start;gap:15px;padding:19px 20px;border-radius:22px;background:#fff;border:1px solid rgba(15,77,138,.09);box-shadow:0 12px 28px rgba(15,42,74,.055)}
.bio-step-number{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;background:#0f4d8a;color:#fff;font-weight:900;font-size:.84rem;flex:0 0 auto}
.bio-career-start small{display:block;color:#0f4d8a;font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin:2px 0 7px}
.bio-career-start p{margin:0;color:#596a83;line-height:1.65}
.bio-timeline{position:relative;display:grid;gap:12px}
.bio-timeline::before{content:"";position:absolute;left:27px;top:10px;bottom:10px;width:2px;background:linear-gradient(180deg,#0f4d8a 0%,#23b26d 65%,rgba(216,155,43,.7) 100%)}
.bio-timeline-item{position:relative;display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:stretch}
.bio-timeline-marker{position:relative;z-index:1;display:flex;justify-content:center;padding-top:17px}
.bio-timeline-marker span{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:12px;background:#fff;border:2px solid #0f4d8a;color:#0f4d8a;font-size:.72rem;font-weight:950;box-shadow:0 5px 12px rgba(15,42,74,.10)}
.bio-timeline-card{padding:18px 20px;border-radius:20px;background:#fff;border:1px solid rgba(15,77,138,.085);box-shadow:0 11px 26px rgba(15,42,74,.05);transition:transform .18s ease,box-shadow .18s ease}
.bio-timeline-card:hover{transform:translateX(3px);box-shadow:0 15px 30px rgba(15,42,74,.08)}
.bio-timeline-type{display:block;color:#0f4d8a;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.09em;margin-bottom:6px}
.bio-timeline-card p{margin:0;color:#445771;font-size:1rem;line-height:1.65;font-weight:650}
.bio-public-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bio-public-card-head{display:flex;gap:14px;align-items:center;margin-bottom:16px}
.bio-public-list{display:grid;gap:10px}
.bio-public-list p{display:grid;grid-template-columns:24px 1fr;gap:10px;margin:0;padding:12px 13px;border-radius:15px;background:rgba(15,77,138,.035);color:#4b5e79;line-height:1.55}
.bio-public-list p>span{display:inline-flex;color:#0f4d8a;margin-top:2px}
.tone-green .bio-public-list p{background:rgba(35,178,109,.045)}
.tone-green .bio-public-list p>span{color:#157347}
.bio-commissions-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 28px;margin-bottom:16px;border-radius:26px;background:linear-gradient(135deg,#0f4d8a 0%,#173b65 58%,#1b6152 100%);color:#fff;box-shadow:0 18px 42px rgba(15,42,74,.16);overflow:hidden;position:relative}
.bio-commissions-intro::after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-70px;top:-80px;background:rgba(255,255,255,.06)}
.bio-commissions-intro .bio-section-kicker{color:#d6e9ff}
.bio-commissions-intro h2{color:#fff}
.bio-commissions-intro p{margin:9px 0 0;color:rgba(255,255,255,.78);line-height:1.65;max-width:70ch}
.bio-commission-symbol{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:74px;height:74px;border-radius:22px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.14);color:#fff;flex:0 0 auto}
.bio-commission-symbol svg{width:36px;height:36px}
.bio-commission-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.bio-commission-card{min-height:210px}
.bio-commission-card .bio-card-label{margin-top:3px}
.bio-links-section{display:grid;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);gap:32px;align-items:center;padding:30px 32px;margin:8px 0 24px;border-radius:30px;background:linear-gradient(135deg,#ffffff 0%,#f8fbff 72%,#f4faf7 100%);border:1px solid rgba(15,77,138,.09);box-shadow:0 18px 44px rgba(15,42,74,.075);overflow:hidden;position:relative}
.bio-links-section::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-100px;top:-125px;background:radial-gradient(circle,rgba(35,178,109,.11),rgba(35,178,109,0) 68%);pointer-events:none}
.bio-links-section p,.bio-next-page p{margin:8px 0 0;color:#65748b;line-height:1.65}
.bio-social-intro{position:relative;z-index:1}
.bio-social-note{display:inline-flex;align-items:center;gap:9px;margin-top:18px;padding:9px 12px;border-radius:999px;background:#edf5ff;border:1px solid rgba(15,77,138,.08);color:#35516f;font-size:.76rem}
.bio-social-note>span{display:inline-flex;color:#d9468b}
.bio-social-note svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.bio-social-board{position:relative;z-index:1;display:grid;gap:12px;min-width:0}
.bio-social-featured{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.bio-social-instagram-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) 28px;gap:13px;align-items:center;min-height:104px;padding:18px;border-radius:22px;color:#fff;text-decoration:none;overflow:hidden;isolation:isolate;box-shadow:0 13px 28px rgba(36,35,75,.16);transition:transform .2s ease,box-shadow .2s ease}
.bio-social-instagram-card::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#833ab4 0%,#c13584 42%,#e1306c 68%,#f77737 100%);z-index:-2}
.bio-social-instagram-card.instagram-card-2::before{background:linear-gradient(135deg,#112f54 0%,#165a8c 52%,#7f3da8 100%)}
.bio-social-instagram-card::after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;right:-45px;top:-55px;background:rgba(255,255,255,.12);z-index:-1}
.bio-social-instagram-card:hover{transform:translateY(-3px);box-shadow:0 17px 34px rgba(36,35,75,.22)}
.bio-social-brand-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:15px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.2)}
.bio-social-brand-icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8}
.bio-social-card-copy{display:grid;gap:2px;min-width:0}
.bio-social-card-copy small{font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.09em;color:rgba(255,255,255,.73)}
.bio-social-card-copy strong{font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bio-social-card-copy>span{font-size:.75rem;color:rgba(255,255,255,.78)}
.bio-social-card-arrow{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.12)}
.bio-social-card-arrow svg{width:16px;height:16px}
.bio-social-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.bio-social-channel{display:grid!important;grid-template-columns:38px minmax(0,1fr) 24px;align-items:center!important;gap:11px!important;min-height:64px!important;padding:10px 13px!important;border-radius:18px!important;background:#fff!important;border:1px solid rgba(15,77,138,.085)!important;color:#263a59!important;text-decoration:none!important;box-shadow:0 6px 16px rgba(15,42,74,.035);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important}
.bio-social-channel:hover{transform:translateY(-2px)!important;background:#fff!important;border-color:rgba(15,77,138,.18)!important;box-shadow:0 11px 24px rgba(15,42,74,.075)!important}
.bio-social-channel-icon{display:flex!important;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#f2f7fc;color:#0f4d8a!important}
.bio-social-channel-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.bio-social-channel-youtube .bio-social-channel-icon{color:#d62828!important;background:#fff2f2}
.bio-social-channel-facebook .bio-social-channel-icon{color:#1877f2!important;background:#eef5ff}
.bio-social-channel-tiktok .bio-social-channel-icon{color:#111827!important;background:#f2f3f5}
.bio-social-channel-kwai .bio-social-channel-icon{color:#ff6b00!important;background:#fff4eb}
.bio-social-channel-x .bio-social-channel-icon{color:#111827!important;background:#f2f3f5}
.bio-social-channel-wikipedia .bio-social-channel-icon{color:#374151!important;background:#f4f5f6}
.bio-social-channel-email .bio-social-channel-icon{color:#0f4d8a!important;background:#eef6ff}
.bio-social-channel-copy{display:grid!important;gap:2px;min-width:0;color:#263a59!important}
.bio-social-channel-copy strong{font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bio-social-channel-copy small{font-size:.71rem;color:#7a8799;font-weight:700}
.bio-social-channel-arrow{display:flex!important;align-items:center;justify-content:center;color:#0f4d8a!important}
.bio-social-channel-arrow svg{width:16px;height:16px}
.bio-next-page{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:28px 30px;border-radius:28px;background:linear-gradient(135deg,#fffaf0 0%,#ffffff 55%,#f4fbf7 100%);border:1px solid rgba(216,155,43,.17);box-shadow:0 17px 40px rgba(15,42,74,.07)}
.bio-next-page .btn{display:inline-flex;align-items:center;gap:9px;flex:0 0 auto}
.bio-next-page .btn svg{width:18px;height:18px}
@media (max-width: 1040px){
  .bio-profile-card{grid-template-columns:300px 1fr;gap:26px}
  .bio-profile-photo-wrap,.bio-profile-photo-wrap img{min-height:350px}
  .bio-profile-facts{grid-template-columns:1fr}
  .bio-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bio-info-card-wide{grid-column:auto}
  .bio-commission-grid{grid-template-columns:1fr}
  .bio-commission-card{min-height:auto}
}
@media (max-width: 780px){
  .bio-page-section{padding-top:28px}
  .bio-profile-card{grid-template-columns:1fr;padding:20px;border-radius:24px;gap:20px}
  .bio-profile-photo-wrap{height:390px;min-height:0}
  .bio-profile-photo-wrap img{height:100%;min-height:0;object-position:center 16%}
  .bio-profile-copy{padding:0 2px 4px}
  .bio-profile-copy h2{font-size:2.45rem}
  .bio-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
  .bio-metrics>div{padding:12px 10px}
  .bio-metrics strong{font-size:1.4rem}
  .bio-metrics span{font-size:.74rem}
  .bio-top-nav{overflow:auto;flex-wrap:nowrap;padding-bottom:5px;margin-bottom:28px;scrollbar-width:none}
  .bio-top-nav::-webkit-scrollbar{display:none}
  .bio-top-nav a{flex:0 0 auto}
  .bio-modern-section{margin-bottom:32px}
  .bio-modern-heading{align-items:flex-start;flex-direction:column;gap:8px}
  .bio-modern-heading>p{text-align:left}
  .bio-info-grid,.bio-formation-grid,.bio-career-start,.bio-public-grid,.bio-links-section{grid-template-columns:1fr}
  .bio-social-featured{grid-template-columns:1fr}
  .bio-social-links{grid-template-columns:1fr}
  .bio-info-card{min-height:auto}
  .bio-feature-card{min-height:auto}
  .bio-links-section{gap:18px;padding:22px 20px}
  .bio-next-page{align-items:flex-start;flex-direction:column;padding:24px 22px}
  .bio-next-page .btn{width:100%;justify-content:center}
  .bio-commissions-intro{padding:23px 20px}
  .bio-commission-symbol{display:none}
}
@media (max-width: 520px){
  .bio-profile-card{padding:16px}
  .bio-profile-photo-wrap{height:330px;border-radius:20px}
  .bio-profile-copy h2{font-size:2.15rem}
  .bio-profile-summary{font-size:1rem;line-height:1.7}
  .bio-profile-facts>span{padding:12px}
  .bio-metrics{gap:7px}
  .bio-metrics>div{border-radius:14px}
  .bio-info-card,.bio-feature-card,.bio-public-card,.bio-commission-card{border-radius:20px;padding:18px}
  .bio-timeline::before{left:20px}
  .bio-timeline-item{grid-template-columns:42px 1fr;gap:10px}
  .bio-timeline-marker span{width:32px;height:32px}
  .bio-timeline-card{padding:15px 16px}
  .bio-social-links{grid-template-columns:1fr}
}

/* ========================================================================== */
/* HOME MODERNA — 14/08/2026                                                  */
/* ========================================================================== */
.home-modern-hero{
  position:relative;
  overflow:hidden;
  padding:34px 0 28px;
  background:
    radial-gradient(circle at 12% 5%,rgba(35,178,109,.12),transparent 28%),
    radial-gradient(circle at 92% 12%,rgba(216,155,43,.14),transparent 24%),
    linear-gradient(180deg,#f8fbff 0%,#eef4fa 100%);
  border-bottom:1px solid rgba(15,77,138,.08);
}
.home-modern-hero::before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border-radius:50%;
  border:1px solid rgba(15,77,138,.07);
  left:-170px;
  bottom:-270px;
  pointer-events:none;
}
.home-hero-container{width:min(1420px,calc(100% - 40px))}
.home-hero-shell{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,.83fr) minmax(560px,1.17fr);
  gap:24px;
  padding:18px;
  border:1px solid rgba(15,77,138,.10);
  border-radius:32px;
  background:rgba(255,255,255,.82);
  box-shadow:0 24px 60px rgba(15,42,74,.10);
  backdrop-filter:blur(14px);
}
.home-hero-copy{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:520px;
  padding:46px 44px;
  border-radius:24px;
  color:#fff;
  background:
    radial-gradient(circle at 20% 10%,rgba(216,155,43,.25),transparent 27%),
    radial-gradient(circle at 100% 100%,rgba(35,178,109,.18),transparent 35%),
    linear-gradient(145deg,#102c4a 0%,#0f4d8a 55%,#1467a9 100%);
}
.home-hero-copy::after{
  content:"";
  position:absolute;
  width:270px;
  height:270px;
  right:-125px;
  top:-120px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
}
.home-hero-kicker{
  align-self:flex-start;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.11);
  border:1px solid rgba(255,255,255,.18);
  color:#ffe6ac;
  font-size:.74rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.home-hero-copy h1{
  position:relative;
  z-index:1;
  max-width:720px;
  margin:18px 0 16px;
  font-size:clamp(2.5rem,4.5vw,5rem);
  line-height:.95;
  letter-spacing:-.055em;
}
.home-hero-lead{
  position:relative;
  z-index:1;
  max-width:58ch;
  margin:0;
  color:rgba(255,255,255,.86);
  font-size:1.08rem;
  line-height:1.72;
}
.home-hero-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:25px;position:relative;z-index:1}
.home-btn-primary{background:#0f4d8a;color:#fff;box-shadow:0 10px 24px rgba(15,77,138,.18)}
.home-btn-primary:hover{background:#0b3f73;transform:translateY(-1px)}
.home-btn-secondary{background:rgba(255,255,255,.10);color:#fff;border:1px solid rgba(255,255,255,.25)}
.home-btn-secondary:hover{background:rgba(255,255,255,.17)}
.home-btn-light{background:#fff;color:#0f4d8a;border:1px solid rgba(15,77,138,.12)}
.home-btn-light:hover{background:#f2f7fc}
.home-hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;position:relative;z-index:1}
.home-hero-tags span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.13);font-size:.78rem;font-weight:800;color:rgba(255,255,255,.86)}
.home-hero-social{display:flex;align-items:center;gap:13px;margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.13);position:relative;z-index:1}
.home-hero-social>strong{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.67)}
.home-hero-social>div{display:flex;flex-wrap:wrap;gap:7px}
.home-hero-social .social-icon-link{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.15);box-shadow:none}
.home-hero-social .social-icon{color:#fff}
.home-hero-visual{
  align-self:stretch;
  min-width:0;
  padding:0;
  border-radius:24px;
  overflow:hidden;
  background:#10263f;
  box-shadow:0 16px 38px rgba(15,42,74,.15);
}
.home-hero-slider-track{height:100%}
.home-hero-visual .hero-slide{height:100%;position:relative}
.home-hero-slide-media{height:100%;min-height:520px;background:#0b1725}
.home-hero-slide-media img{width:100%;height:100%;min-height:520px;object-fit:cover;object-position:center;display:block}
.home-hero-fallback{height:100%}
.home-hero-slide-caption{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  padding:20px 22px;
  border-radius:19px;
  background:linear-gradient(180deg,rgba(6,16,27,.40) 0%,rgba(6,16,27,.86) 100%);
  color:#fff;
  border:1px solid rgba(255,255,255,.13);
  backdrop-filter:blur(10px);
}
.home-hero-slide-caption strong{display:block;margin-bottom:5px;font-size:1.12rem;line-height:1.3}
.home-hero-slide-caption p{margin:0;color:rgba(255,255,255,.78);font-size:.92rem}
.home-hero-slide-caption a{display:inline-flex;margin-top:10px;font-weight:900;color:#ffe1a2}
.home-hero-slider-dots{position:absolute;top:34px;right:34px;z-index:3;display:flex;gap:7px;padding:8px 10px;border-radius:999px;background:rgba(7,17,28,.38);backdrop-filter:blur(8px)}
.home-hero-visual{position:relative}
.home-hero-visual .hero-dot{width:9px;height:9px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.35)}
.home-hero-visual .hero-dot.is-active{width:24px;background:#fff}

.home-section-nav-wrap{position:relative;z-index:8;margin-top:-1px;background:#fff;border-bottom:1px solid rgba(15,77,138,.08)}
.home-section-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:14px 0}
.home-section-nav a{padding:9px 14px;border-radius:999px;background:#f4f8fc;border:1px solid rgba(15,77,138,.08);color:#425571;font-size:.83rem;font-weight:850;transition:.2s ease}
.home-section-nav a:hover{background:rgba(15,77,138,.08);border-color:rgba(15,77,138,.20);color:#0f4d8a;transform:translateY(-1px)}

.home-modern-section{padding:70px 0;background:#f7f9fc}
.home-modern-section.home-soft-section{background:linear-gradient(180deg,#eef4fa 0%,#f7f9fc 100%)}
.home-modern-wrap{width:min(1200px,100%)}
.home-section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);align-items:end;gap:28px;margin-bottom:24px}
.home-section-heading.compact{grid-template-columns:1fr auto;align-items:center}
.home-section-heading>div h2{margin:7px 0 0;color:#1b2b43;font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.035em}
.home-section-heading>p{margin:0;color:#64748b;line-height:1.7;max-width:52ch;justify-self:end}
.home-section-kicker{display:inline-block;color:#0f4d8a;font-size:.74rem;font-weight:900;letter-spacing:.10em;text-transform:uppercase}
.home-heading-with-link{grid-template-columns:1fr auto;align-items:center}
.home-section-link{display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;background:#fff;border:1px solid rgba(15,77,138,.10);color:#0f4d8a;font-size:.84rem;font-weight:900;box-shadow:0 6px 18px rgba(15,42,74,.04)}
.home-section-link:hover{background:#eef5fb}

.home-intro-card{
  display:grid;
  grid-template-columns:300px minmax(0,1fr);
  gap:0;
  overflow:hidden;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(15,77,138,.09);
  box-shadow:0 18px 44px rgba(15,42,74,.06);
}
.home-intro-side{position:relative;padding:30px 28px;color:#fff;background:linear-gradient(160deg,#0f4d8a 0%,#164f80 58%,#146d76 100%)}
.home-intro-number{display:block;margin-bottom:42px;font-size:3.7rem;line-height:1;font-weight:950;color:rgba(255,255,255,.12);letter-spacing:-.05em}
.home-intro-side h3{font-size:1.55rem;line-height:1.18;margin-bottom:12px}
.home-intro-side p{color:rgba(255,255,255,.78);font-size:.92rem;line-height:1.65}
.home-intro-links{display:grid;gap:8px;margin-top:24px}
.home-intro-links a{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.12);font-weight:850;font-size:.83rem}
.home-intro-links a:hover{background:rgba(255,255,255,.16)}
.home-intro-content{padding:34px 38px;color:#425571;font-size:1rem;line-height:1.72}
.home-intro-content p{margin:0 0 15px;break-inside:avoid}
.home-intro-content p:last-child{margin-bottom:0}
.home-intro-content.is-long{column-count:2;column-gap:38px;column-rule:1px solid rgba(15,77,138,.08)}

.home-feature-showcase{display:grid;gap:18px}
.home-feature-primary{
  display:grid;
  grid-template-columns:minmax(340px,.88fr) minmax(0,1.12fr);
  overflow:hidden;
  border-radius:26px;
  background:#fff;
  border:1px solid rgba(15,77,138,.09);
  box-shadow:0 18px 44px rgba(15,42,74,.06);
}
.home-feature-primary-media{min-height:350px;background:#e8eef5}
.home-feature-primary-media img{width:100%;height:100%;min-height:350px;object-fit:cover;display:block}
.home-feature-primary-copy{padding:36px 38px;align-self:center}
.home-feature-primary-copy h3{margin:13px 0 16px;color:#1f3049;font-size:clamp(1.6rem,2.7vw,2.4rem);letter-spacing:-.03em}
.home-feature-pill{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(15,77,138,.08);color:#0f4d8a;font-size:.68rem;line-height:1;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.home-feature-text{color:#52647e;line-height:1.7}
.home-feature-text p{margin:0 0 13px;break-inside:avoid}
.home-feature-text p:last-child{margin-bottom:0}
.home-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.home-feature-card{
  position:relative;
  overflow:hidden;
  min-width:0;
  padding:28px 30px;
  border-radius:24px;
  background:#fff;
  border:1px solid rgba(15,77,138,.09);
  box-shadow:0 14px 36px rgba(15,42,74,.05);
}
.home-feature-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#0f4d8a,#5ea8f0)}
.home-feature-card.tone-green::before{background:linear-gradient(90deg,#23b26d,#8bd9ae)}
.home-feature-card.tone-amber::before{background:linear-gradient(90deg,#d89b2b,#f5ce74)}
.home-feature-card.tone-purple::before{background:linear-gradient(90deg,#6c5ce7,#b2a7ff)}
.home-feature-card.is-wide{grid-column:1/-1}
.home-feature-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}
.home-feature-index{font-size:1.8rem;line-height:1;font-weight:950;color:rgba(15,77,138,.14);letter-spacing:-.06em}
.home-feature-card h3{margin-bottom:16px;color:#21334f;font-size:1.35rem;line-height:1.25}
.home-feature-card-media{overflow:hidden;margin:0 0 18px;border-radius:17px;aspect-ratio:16/8.5;background:#e8eef5}
.home-feature-card-media img{width:100%;height:100%;object-fit:cover}
.home-feature-text.is-columns{column-count:2;column-gap:34px;column-rule:1px solid rgba(15,77,138,.08)}

.home-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.home-project-card{overflow:hidden;border-radius:24px;background:#fff;border:1px solid rgba(15,77,138,.09);box-shadow:0 14px 34px rgba(15,42,74,.055);transition:.22s ease}
.home-project-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(15,42,74,.09)}
.home-project-media{position:relative;overflow:hidden;aspect-ratio:16/10;background:#e9eef4}
.home-project-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.home-project-card:hover .home-project-media img{transform:scale(1.025)}
.home-project-media>span{position:absolute;left:14px;top:14px;padding:7px 10px;border-radius:999px;background:rgba(8,21,34,.72);color:#fff;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;backdrop-filter:blur(8px)}
.home-project-copy{padding:21px 22px}
.home-project-copy h3{margin-bottom:9px;color:#21334f;font-size:1.2rem}
.home-project-copy p{color:#60718a;font-size:.92rem;line-height:1.6}
.home-project-copy time{display:block;margin-top:16px;color:#8a98aa;font-size:.76rem;font-weight:800}

.home-gallery-modern-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:205px;gap:14px}
.home-gallery-modern-item{position:relative;overflow:hidden;margin:0;border-radius:21px;background:#dfe7ef;border:1px solid rgba(15,77,138,.08);box-shadow:0 12px 28px rgba(15,42,74,.05)}
.home-gallery-modern-item.is-featured{grid-column:span 2;grid-row:span 2}
.home-gallery-modern-item img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.home-gallery-modern-item:hover img{transform:scale(1.025)}
.home-gallery-modern-item figcaption{position:absolute;left:12px;right:12px;bottom:12px;padding:11px 13px;border-radius:13px;background:linear-gradient(180deg,rgba(7,18,30,.30),rgba(7,18,30,.82));color:#fff;font-size:.82rem;font-weight:850;backdrop-filter:blur(6px)}

.home-media-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.65fr);gap:20px;align-items:start}
.home-video-modern-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.home-video-modern-card{overflow:hidden;border-radius:23px;background:#fff;border:1px solid rgba(15,77,138,.09);box-shadow:0 14px 34px rgba(15,42,74,.055)}
.home-video-modern-frame,.home-video-modern-media{background:#091521;aspect-ratio:16/9}
.home-video-modern-frame iframe{display:block;width:100%;height:100%;border:0}
.home-video-modern-media img{width:100%;height:100%;object-fit:cover}
.home-video-modern-copy{padding:18px 20px}
.home-video-modern-copy h3{margin-bottom:8px;color:#21334f;font-size:1.06rem}
.home-video-modern-copy p{margin:0;color:#65758b;font-size:.88rem;line-height:1.55}
.home-poll-modern{position:sticky;top:112px;padding:28px;border-radius:25px;background:linear-gradient(155deg,#102d4d 0%,#0f4d8a 68%,#176c7a 100%);color:#fff;box-shadow:0 18px 44px rgba(15,42,74,.13)}
.home-poll-modern .home-section-kicker{color:#ffe0a0}
.home-poll-modern h2{margin:8px 0 17px;font-size:1.75rem}
.home-poll-question{padding:16px 17px;border-radius:16px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.13);font-weight:850;line-height:1.45}
.home-poll-modern p{margin:16px 0 20px;color:rgba(255,255,255,.76);font-size:.9rem;line-height:1.6}
.home-poll-modern .home-btn-primary{width:100%;background:#fff;color:#0f4d8a;box-shadow:none}
.home-poll-modern .home-btn-primary:hover{background:#edf5fb}

.home-cta-section{padding:18px 0 72px;background:#f7f9fc}
.home-cta-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:32px 34px;border-radius:26px;background:linear-gradient(115deg,#eef5fb 0%,#f8fbff 54%,#edf9f3 100%);border:1px solid rgba(15,77,138,.09);box-shadow:0 14px 34px rgba(15,42,74,.045)}
.home-cta-card h2{margin:8px 0 8px;color:#1f3049;font-size:clamp(1.55rem,2.8vw,2.35rem);max-width:720px}
.home-cta-card p{margin:0;color:#60718a}
.home-cta-actions{display:flex;flex-wrap:wrap;gap:10px;flex:0 0 auto}

@media (max-width:1120px){
  .home-hero-shell{grid-template-columns:1fr 1fr}
  .home-hero-copy{padding:36px 30px;min-height:470px}
  .home-hero-slide-media,.home-hero-slide-media img{min-height:470px}
  .home-intro-card{grid-template-columns:260px 1fr}
  .home-media-layout{grid-template-columns:1fr}
  .home-poll-modern{position:relative;top:auto}
}
@media (max-width:900px){
  .home-modern-hero{padding:22px 0}
  .home-hero-shell{grid-template-columns:1fr;padding:12px;border-radius:25px}
  .home-hero-copy{min-height:auto;padding:34px 28px;border-radius:19px}
  .home-hero-slide-media,.home-hero-slide-media img{min-height:390px}
  .home-section-heading,.home-section-heading.compact,.home-heading-with-link{grid-template-columns:1fr;align-items:start;gap:10px}
  .home-section-heading>p{justify-self:start}
  .home-intro-card{grid-template-columns:1fr}
  .home-intro-number{margin-bottom:20px}
  .home-intro-content.is-long{column-count:1}
  .home-feature-primary{grid-template-columns:1fr}
  .home-feature-primary-media,.home-feature-primary-media img{min-height:300px}
  .home-feature-grid{grid-template-columns:1fr}
  .home-feature-card.is-wide{grid-column:auto}
  .home-feature-text.is-columns{column-count:1}
  .home-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-gallery-modern-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:190px}
  .home-video-modern-grid{grid-template-columns:1fr}
  .home-cta-card{align-items:flex-start;flex-direction:column}
}
@media (max-width:620px){
  .home-hero-container{width:min(100% - 24px,1420px)}
  .home-hero-copy{padding:28px 22px}
  .home-hero-copy h1{font-size:clamp(2.25rem,13vw,3.4rem)}
  .home-hero-actions{display:grid;grid-template-columns:1fr}
  .home-hero-actions .btn{width:100%}
  .home-hero-tags{gap:6px}
  .home-hero-social{align-items:flex-start;flex-direction:column}
  .home-hero-slide-media,.home-hero-slide-media img{min-height:300px}
  .home-hero-slide-caption{left:10px;right:10px;bottom:10px;padding:15px}
  .home-hero-slider-dots{top:18px;right:18px}
  .home-section-nav{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:14px;scrollbar-width:none}
  .home-section-nav::-webkit-scrollbar{display:none}
  .home-section-nav a{white-space:nowrap}
  .home-modern-section{padding:50px 0}
  .home-section-heading{margin-bottom:18px}
  .home-intro-side,.home-intro-content,.home-feature-primary-copy,.home-feature-card{padding:24px 21px}
  .home-project-grid{grid-template-columns:1fr}
  .home-gallery-modern-grid{grid-template-columns:1fr;grid-auto-rows:250px}
  .home-gallery-modern-item.is-featured{grid-column:auto;grid-row:auto}
  .home-cta-card{padding:25px 22px}
  .home-cta-actions{width:100%}
  .home-cta-actions .btn{width:100%}
}

/* ========================================================================== */
/* HOME — AJUSTES DE PROPORÇÃO, SLIDES E LARGURA — 14/08/2026 v2             */
/* ========================================================================== */
.home-hero-container{
  width:min(1480px,calc(100% - 36px));
}
.home-hero-shell{
  grid-template-columns:minmax(360px,.72fr) minmax(0,1.28fr);
  gap:18px;
  padding:14px;
  border-radius:28px;
}
.home-hero-copy{
  min-height:470px;
  padding:38px 36px;
  border-radius:22px;
}
.home-hero-copy h1{
  max-width:620px;
  font-size:clamp(2.65rem,4.1vw,4.45rem);
  line-height:.98;
}
.home-hero-lead{
  font-size:1rem;
  line-height:1.62;
}
.home-hero-tags{
  margin-top:18px;
}
.home-hero-social{
  margin-top:20px;
  padding-top:16px;
}
.home-hero-visual{
  min-height:470px;
  border-radius:22px;
  background:#0a1725;
}
.home-hero-slider-track,
.home-hero-visual .hero-slide{
  min-height:470px;
}
.home-hero-slide-media{
  position:relative;
  isolation:isolate;
  display:grid;
  place-items:center;
  height:auto;
  min-height:390px;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:#0b1725;
}
.home-hero-slide-media .home-hero-slide-backdrop{
  position:absolute;
  inset:-24px;
  z-index:0;
  width:calc(100% + 48px);
  height:calc(100% + 48px);
  min-height:0;
  object-fit:cover;
  filter:blur(22px) saturate(.9) brightness(.62);
  opacity:.68;
  transform:scale(1.04);
}
.home-hero-slide-media .home-hero-slide-image{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  min-height:0;
  object-fit:contain;
  object-position:center center;
  display:block;
}
.home-hero-slide-caption{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  z-index:4;
  padding:15px 18px 16px;
  border:0;
  border-top:1px solid rgba(255,255,255,.10);
  border-radius:0;
  background:linear-gradient(180deg,#10263f 0%,#0b1c2d 100%);
  backdrop-filter:none;
}
.home-hero-slide-caption strong{
  font-size:1rem;
}
.home-hero-slide-caption p{
  font-size:.86rem;
  line-height:1.45;
}
.home-hero-slide-caption a{
  margin-top:7px;
  font-size:.86rem;
}
.home-hero-slider-dots{
  top:20px;
  right:20px;
}
.home-hero-slider-controls{
  position:absolute;
  left:16px;
  right:16px;
  top:50%;
  z-index:6;
  display:flex;
  justify-content:space-between;
  pointer-events:none;
  transform:translateY(-50%);
}
.home-hero-slider-arrow{
  pointer-events:auto;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  padding:0;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(7,17,28,.62);
  color:#fff;
  font:800 1.7rem/1 Arial,sans-serif;
  cursor:pointer;
  box-shadow:0 8px 22px rgba(0,0,0,.16);
  backdrop-filter:blur(8px);
  transition:transform .18s ease,background .18s ease;
}
.home-hero-slider-arrow:hover{
  background:rgba(15,77,138,.90);
  transform:scale(1.05);
}
.home-modern-wrap{
  width:min(1320px,calc(100% - 40px));
  margin-inline:auto;
}
.home-modern-section{
  padding:62px 0;
}
.home-section-heading{
  grid-template-columns:minmax(0,1fr) minmax(320px,460px);
  gap:38px;
  margin-bottom:26px;
}
.home-intro-card{
  grid-template-columns:280px minmax(0,1fr);
}
.home-intro-content{
  padding:32px 36px;
}
.home-intro-content.is-long{
  column-gap:42px;
}
.home-feature-primary.no-media{
  grid-template-columns:1fr;
}
.home-feature-primary.no-media .home-feature-primary-copy{
  max-width:none;
  padding:32px 36px;
}
.home-feature-primary.no-media .home-feature-text{
  max-width:100%;
}
.home-feature-primary.has-media{
  grid-template-columns:minmax(360px,.86fr) minmax(0,1.14fr);
}
.home-feature-primary-media,
.home-feature-primary-media img{
  min-height:330px;
}
.home-feature-grid{
  gap:20px;
}
.home-feature-card{
  padding:27px 29px;
}
.home-project-grid{
  gap:20px;
}

@media (max-width:1180px){
  .home-hero-shell{
    grid-template-columns:minmax(330px,.82fr) minmax(0,1.18fr);
  }
  .home-hero-copy{
    min-height:440px;
    padding:32px 28px;
  }
  .home-hero-copy h1{
    font-size:clamp(2.35rem,4.7vw,3.7rem);
  }
  .home-hero-visual,
  .home-hero-slider-track,
  .home-hero-visual .hero-slide{
    min-height:440px;
  }
  .home-modern-wrap{
    width:min(100% - 32px,1280px);
  }
}

@media (max-width:920px){
  .home-hero-container{
    width:min(100% - 24px,900px);
  }
  .home-hero-shell{
    grid-template-columns:1fr;
    padding:11px;
    gap:11px;
  }
  .home-hero-copy{
    min-height:auto;
    padding:30px 26px;
  }
  .home-hero-visual,
  .home-hero-slider-track,
  .home-hero-visual .hero-slide{
    min-height:0;
  }
  .home-hero-slide-media{
    min-height:0;
    aspect-ratio:16 / 9;
  }
  .home-modern-wrap{
    width:min(100% - 28px,860px);
  }
  .home-section-heading{
    grid-template-columns:1fr;
    gap:9px;
  }
  .home-section-heading>p{
    justify-self:start;
    max-width:70ch;
  }
  .home-intro-card{
    grid-template-columns:1fr;
  }
  .home-feature-primary.has-media{
    grid-template-columns:1fr;
  }
}

@media (max-width:640px){
  .home-modern-hero{
    padding:14px 0 16px;
  }
  .home-hero-container{
    width:calc(100% - 16px);
  }
  .home-hero-shell{
    padding:8px;
    border-radius:21px;
  }
  .home-hero-copy{
    padding:26px 20px;
    border-radius:17px;
  }
  .home-hero-copy h1{
    font-size:clamp(2.25rem,12.5vw,3.3rem);
  }
  .home-hero-slide-media{
    aspect-ratio:16 / 9;
  }
  .home-hero-slide-caption{
    padding:13px 14px 14px;
  }
  .home-hero-slider-controls{
    left:9px;
    right:9px;
  }
  .home-hero-slider-arrow{
    width:34px;
    height:34px;
    font-size:1.5rem;
  }
  .home-hero-slider-dots{
    top:12px;
    right:12px;
  }
  .home-modern-wrap{
    width:calc(100% - 20px);
  }
  .home-modern-section{
    padding:46px 0;
  }
  .home-intro-side,
  .home-intro-content,
  .home-feature-primary-copy,
  .home-feature-primary.no-media .home-feature-primary-copy,
  .home-feature-card{
    padding:22px 19px;
  }
  .home-intro-content.is-long,
  .home-feature-text.is-columns{
    column-count:1;
  }
}
.home-feature-expandable{
  position:relative;
}
.home-feature-card.is-collapsible .home-feature-text{
  position:relative;
  max-height:360px;
  overflow:hidden;
  transition:max-height .32s ease;
}
.home-feature-card.is-collapsible .home-feature-expandable::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:48px;
  height:92px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,0),#fff 82%);
  transition:opacity .2s ease;
}
.home-feature-card.is-collapsible.is-expanded .home-feature-text{
  max-height:none;
}
.home-feature-card.is-collapsible.is-expanded .home-feature-expandable::after{
  opacity:0;
}
.home-feature-toggle{
  position:relative;
  z-index:2;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin-top:14px;
  padding:10px 14px;
  border:1px solid rgba(15,77,138,.13);
  border-radius:12px;
  background:#f3f7fb;
  color:#0f4d8a;
  font:850 .84rem/1.2 inherit;
  cursor:pointer;
  transition:background .18s ease,transform .18s ease;
}
.home-feature-toggle:hover{
  background:#e8f1f9;
  transform:translateY(-1px);
}
.home-feature-card.is-expanded .home-feature-toggle span:last-child{
  transform:rotate(180deg);
}
.home-feature-toggle span:last-child{
  transition:transform .2s ease;
}

/* ===== Enquete moderna / AJAX ===== */
.poll-container{width:min(1180px,calc(100% - 40px));margin:0 auto}
.poll-hero-modern{position:relative;overflow:hidden;padding:54px 0 46px;background:radial-gradient(circle at 12% 20%,rgba(35,178,109,.12),transparent 30%),radial-gradient(circle at 88% 14%,rgba(216,155,43,.13),transparent 26%),linear-gradient(135deg,#f9fcff 0%,#edf5fb 55%,#f7fbf8 100%);border-bottom:1px solid rgba(15,77,138,.10)}
.poll-hero-modern::after{content:"";position:absolute;width:280px;height:280px;border:1px solid rgba(15,77,138,.08);border-radius:50%;right:-90px;bottom:-170px;box-shadow:0 0 0 34px rgba(15,77,138,.025),0 0 0 70px rgba(15,77,138,.02)}
.poll-hero-modern .poll-container{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;position:relative;z-index:1}
.poll-hero-copy{max-width:760px}
.poll-hero-copy h1{margin:12px 0 10px;font-size:clamp(2.35rem,5vw,4.6rem);letter-spacing:-.045em;color:#14233a}
.poll-hero-copy p{max-width:720px;margin:0;color:#50627a;font-size:1.05rem;line-height:1.7}
.poll-hero-badges{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.poll-hero-badges span{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.78);border:1px solid rgba(15,77,138,.10);box-shadow:0 10px 28px rgba(15,42,74,.06);color:#36516f;font-size:.83rem;font-weight:800;backdrop-filter:blur(12px)}
.poll-hero-badges strong{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#0f4d8a;color:#fff;font-size:.74rem}
.poll-page-modern{padding-top:46px;background:linear-gradient(180deg,#f5f8fc 0%,#f8fafc 45%,#f3f7fb 100%)}
.poll-experience{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.75fr);gap:24px;align-items:stretch}
.poll-main-card,.poll-side-card,.poll-comments-modern,.poll-approved-section,.poll-empty-modern{border:1px solid rgba(15,77,138,.10);background:rgba(255,255,255,.96);box-shadow:0 20px 54px rgba(15,42,74,.08)}
.poll-main-card{position:relative;overflow:hidden;padding:34px;border-radius:28px}
.poll-main-card::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#0f4d8a 0%,#23b26d 56%,#d89b2b 100%)}
.poll-main-topline,.poll-side-head,.poll-submit-row,.poll-comment-submit-row,.poll-approved-head,.poll-field-label-row{display:flex;align-items:center;justify-content:space-between;gap:16px}
.poll-live-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:999px;background:rgba(35,178,109,.08);border:1px solid rgba(35,178,109,.13);color:#147348;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.poll-live-badge i{width:8px;height:8px;border-radius:50%;background:#23b26d;box-shadow:0 0 0 5px rgba(35,178,109,.10)}
.poll-question-wrap{padding:28px 0 22px;border-bottom:1px solid rgba(15,77,138,.08)}
.poll-question-label{display:block;margin-bottom:7px;color:#6c7e92;font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.11em}
.poll-question-wrap h2{max-width:860px;margin:0 0 10px;font-size:clamp(1.85rem,3.4vw,3.05rem);line-height:1.08;letter-spacing:-.035em;color:#17263e}
.poll-question-wrap p{max-width:810px;margin:0;color:#607187;line-height:1.65}
.poll-form-modern{margin-top:24px}
.poll-options-modern{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.poll-option-modern{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;min-height:76px;padding:15px 16px;border-radius:18px;border:1px solid #d8e2ee;background:linear-gradient(180deg,#fff 0%,#f8fbfe 100%);cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
.poll-option-modern:hover{transform:translateY(-2px);border-color:rgba(15,77,138,.26);box-shadow:0 12px 30px rgba(15,42,74,.08)}
.poll-option-modern input{position:absolute;opacity:0;pointer-events:none}
.poll-option-index{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#edf3f9;color:#0f4d8a;font-size:.78rem;font-weight:900;letter-spacing:.04em;transition:.18s ease}
.poll-option-copy{color:#263b55;font-size:.96rem;font-weight:800;line-height:1.35}
.poll-option-check{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;border:1px solid #ced9e6;color:transparent;background:#fff;font-size:.78rem;font-weight:900;transition:.18s ease}
.poll-option-modern.is-selected{border-color:rgba(15,77,138,.50);background:linear-gradient(135deg,rgba(15,77,138,.075),rgba(35,178,109,.045));box-shadow:0 14px 34px rgba(15,77,138,.10)}
.poll-option-modern.is-selected .poll-option-index{background:#0f4d8a;color:#fff}
.poll-option-modern.is-selected .poll-option-check{border-color:#23b26d;background:#23b26d;color:#fff;box-shadow:0 0 0 5px rgba(35,178,109,.09)}
.poll-submit-row{margin-top:20px;padding-top:18px;border-top:1px solid rgba(15,77,138,.08)}
.poll-privacy-note{display:flex;align-items:center;gap:9px;color:#6d7d90;font-size:.82rem}
.poll-privacy-icon{display:grid;place-items:center;width:23px;height:23px;border-radius:8px;background:rgba(35,178,109,.09);color:#147348;font-weight:900}
.poll-vote-button,.poll-comment-button{min-width:218px;border-radius:14px;box-shadow:0 12px 24px rgba(15,77,138,.18);transition:transform .18s ease,opacity .18s ease,box-shadow .18s ease}
.poll-vote-button:not(:disabled):hover,.poll-comment-button:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(15,77,138,.22)}
.poll-vote-button:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.poll-button-arrow{font-size:1.15rem;transition:transform .18s ease}
.poll-vote-button:not(:disabled):hover .poll-button-arrow{transform:translateX(3px)}
.poll-vote-button.is-loading,.poll-comment-button.is-loading{pointer-events:none;opacity:.78}
.poll-vote-button.is-loading::after,.poll-comment-button.is-loading::after{content:"";width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:poll-spin .75s linear infinite}
@keyframes poll-spin{to{transform:rotate(360deg)}}
.poll-status-message,.poll-comment-status{margin:20px 0 0;padding:14px 16px;border-radius:15px;font-size:.9rem;font-weight:800}
.poll-status-message.is-success,.poll-comment-status.is-success{background:#eef9f3;border:1px solid rgba(35,178,109,.18);color:#12683f}
.poll-status-message.is-error,.poll-comment-status.is-error{background:#fff1f1;border:1px solid rgba(180,59,59,.16);color:#963333}
.poll-voted-panel{padding-top:24px}
.poll-success-head{display:flex;align-items:flex-start;gap:15px;padding:18px;border-radius:18px;background:linear-gradient(135deg,#eef9f3 0%,#f8fcfa 100%);border:1px solid rgba(35,178,109,.16)}
.poll-success-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:14px;background:#23b26d;color:#fff;font-size:1.15rem;font-weight:900;box-shadow:0 10px 24px rgba(35,178,109,.20)}
.poll-success-head strong{display:block;margin-bottom:4px;color:#12683f;font-size:1.03rem}
.poll-success-head p{margin:0;color:#5f7568;font-size:.9rem;line-height:1.55}
.poll-side-card{position:relative;overflow:hidden;padding:25px;border-radius:28px;background:linear-gradient(160deg,#102e4f 0%,#0e4f86 68%,#176c72 100%);color:#fff}
.poll-side-card::after{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-90px;bottom:-100px;background:rgba(255,255,255,.055)}
.poll-side-card>*{position:relative;z-index:1}
.poll-side-kicker{font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.10em;color:#c9d9e8}
.poll-side-card .poll-results-total{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.14);color:#fff}
.poll-results-lock{display:grid;place-items:center;text-align:center;min-height:360px;padding:34px 16px}
.poll-lock-icon{display:grid;place-items:center;width:58px;height:58px;margin-bottom:18px;border-radius:18px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.13);font-size:1.2rem;color:#f4c766}
.poll-results-lock h3{margin-bottom:8px;font-size:1.3rem;color:#fff}
.poll-results-lock p{max-width:290px;margin:0;color:rgba(255,255,255,.70);font-size:.9rem;line-height:1.6}
.poll-results-modern{display:grid;gap:18px;margin-top:25px}
.poll-result-modern{padding-bottom:17px;border-bottom:1px solid rgba(255,255,255,.10)}
.poll-result-modern:last-child{padding-bottom:0;border-bottom:0}
.poll-result-modern-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:9px}
.poll-result-modern-head span{font-size:.88rem;font-weight:800;line-height:1.35;color:#fff}
.poll-result-modern-head strong{font-size:1.05rem;color:#f4c766}
.poll-progress-modern{height:9px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.12)}
.poll-progress-modern span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#f0b83f 0%,#ffe3a0 42%,#8de0b9 100%);box-shadow:0 0 18px rgba(244,199,102,.24);animation:poll-bar-in .75s ease both}
@keyframes poll-bar-in{from{width:0}}
.poll-result-modern-meta{display:flex;justify-content:space-between;gap:12px;margin-top:7px;color:rgba(255,255,255,.60);font-size:.72rem;font-weight:700}
.poll-side-summary{margin-top:22px;padding:15px 16px;border-radius:16px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.11)}
.poll-side-summary span{display:block;margin-bottom:4px;color:rgba(255,255,255,.64);font-size:.71rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.poll-side-summary strong{display:block;color:#fff;font-size:.94rem;line-height:1.4}
.poll-community-section{display:grid;grid-template-columns:minmax(250px,.55fr) minmax(0,1.45fr);gap:24px;margin-top:28px;align-items:stretch}
.poll-community-intro{padding:32px;border-radius:28px;background:linear-gradient(145deg,#eff6fb 0%,#edf8f3 100%);border:1px solid rgba(15,77,138,.09)}
.poll-community-intro h2{margin:13px 0 10px;font-size:clamp(1.7rem,3vw,2.45rem);letter-spacing:-.03em;color:#17263e}
.poll-community-intro p{margin:0;color:#607187;line-height:1.7}
.poll-community-stat{display:flex;align-items:baseline;gap:9px;margin-top:26px;padding-top:22px;border-top:1px solid rgba(15,77,138,.10)}
.poll-community-stat strong{font-size:2.2rem;line-height:1;color:#0f4d8a}
.poll-community-stat span{color:#64758a;font-size:.82rem;font-weight:800}
.poll-comments-modern{padding:28px;border-radius:28px}
.poll-comment-grid{grid-template-columns:1fr}
.poll-field label span{font-weight:600;color:#8896a6}
.poll-field-label-row{align-items:flex-end}
.poll-char-counter{color:#8794a5;font-size:.75rem;font-weight:800}
.poll-comments-modern .poll-field input,.poll-comments-modern .poll-field textarea{background:#f7f9fc;border-color:#d8e1ec;border-radius:15px}
.poll-comments-modern .poll-field textarea{min-height:170px}
.poll-comment-submit-row{margin-top:2px;padding-top:17px;border-top:1px solid rgba(15,77,138,.08)}
.poll-comment-note{color:#77879a;font-size:.8rem}
.poll-approved-section{margin-top:28px;padding:30px;border-radius:28px}
.poll-approved-head{align-items:flex-end;margin-bottom:20px}
.poll-approved-head h2{margin:10px 0 0;font-size:clamp(1.55rem,2.6vw,2.2rem)}
.poll-comment-list-modern{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:0}
.poll-comment-item-modern{display:grid;grid-template-columns:auto 1fr;gap:13px;padding:18px;border-radius:18px;background:#f9fbfd}
.poll-comment-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:linear-gradient(145deg,#0f4d8a,#176d73);color:#fff;font-weight:900}
.poll-comment-item-modern .poll-comment-head{margin-bottom:7px}
.poll-comment-item-modern .poll-comment-head strong{font-size:.9rem}
.poll-comment-item-modern .poll-comment-head span{font-size:.72rem}
.poll-comment-item-modern p{font-size:.88rem;line-height:1.62}
.poll-empty-modern{display:flex;align-items:center;gap:22px;padding:34px;border-radius:28px}
.poll-empty-icon{display:grid;place-items:center;flex:0 0 62px;width:62px;height:62px;border-radius:20px;background:linear-gradient(145deg,#0f4d8a,#176d73);color:#fff;font-size:1.6rem;font-weight:900}
.poll-empty-modern h2{margin:11px 0 6px}
.poll-empty-modern p{margin:0;color:#65768a}
.poll-vote-area[hidden],.poll-voted-panel[hidden],.poll-results-lock[hidden],.poll-results-modern[hidden],.poll-side-summary[hidden],.poll-status-message[hidden],.poll-comment-status[hidden]{display:none!important}
@media (max-width:980px){
  .poll-hero-modern .poll-container{align-items:flex-start;flex-direction:column}
  .poll-hero-badges{justify-content:flex-start}
  .poll-experience{grid-template-columns:1fr}
  .poll-side-card{min-height:0}
  .poll-results-lock{min-height:240px}
  .poll-community-section{grid-template-columns:1fr}
  .poll-comment-list-modern{grid-template-columns:1fr}
}
@media (max-width:700px){
  .poll-container{width:min(100% - 24px,1180px)}
  .poll-hero-modern{padding:38px 0 34px}
  .poll-hero-copy h1{font-size:2.45rem}
  .poll-hero-badges{gap:7px}
  .poll-hero-badges span{padding:8px 10px;font-size:.76rem}
  .poll-main-card,.poll-side-card,.poll-comments-modern,.poll-approved-section,.poll-community-intro{padding:21px 18px;border-radius:22px}
  .poll-main-topline,.poll-submit-row,.poll-comment-submit-row,.poll-approved-head{align-items:flex-start;flex-direction:column}
  .poll-options-modern{grid-template-columns:1fr}
  .poll-option-modern{min-height:68px}
  .poll-vote-button,.poll-comment-button{width:100%;min-width:0}
  .poll-privacy-note,.poll-comment-note{font-size:.76rem}
  .poll-result-modern-head span{font-size:.84rem}
  .poll-approved-head{gap:10px}
  .poll-comment-item-modern{grid-template-columns:1fr}
  .poll-comment-avatar{width:36px;height:36px}
  .poll-comment-item-modern .poll-comment-head{align-items:flex-start}
  .poll-empty-modern{align-items:flex-start;flex-direction:column;padding:24px 20px}
}
.poll-result-modern.is-user-choice{position:relative;padding:12px 12px 17px;margin:0 -12px;border-radius:14px;background:rgba(255,255,255,.07);border-bottom-color:transparent}
.poll-result-modern.is-user-choice::before{content:"Seu voto";display:inline-flex;margin-bottom:8px;padding:4px 8px;border-radius:999px;background:rgba(244,199,102,.15);color:#ffe4a5;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}


/* Atualização 27/08/2026 - Redes sociais oficiais */
.admin-social-subtitle{margin-top:2px;padding:10px 12px;border-radius:12px;background:#f2f7fc;color:#0f4d8a;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;border:1px solid rgba(15,77,138,.08)}
@media (max-width:560px){
  .bio-links-section{padding:23px 20px;border-radius:24px;gap:22px}
  .bio-social-instagram-card{grid-template-columns:44px minmax(0,1fr) 26px;min-height:96px;padding:15px}
  .bio-social-brand-icon{width:44px;height:44px}
}

/* ===== HOME: redes sociais em destaque (2026-08-27) ===== */
.home-hero-social{
  display:grid;
  gap:10px;
  margin-top:20px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.14);
}
.home-hero-social>strong{
  font-size:.74rem;
  text-transform:uppercase;
  letter-spacing:.09em;
  color:rgba(255,255,255,.72);
}
.home-hero-instagram-row{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.home-hero-instagram-link{
  min-width:0;
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 18px;
  align-items:center;
  gap:9px;
  padding:9px 10px;
  border-radius:14px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.17);
  background:linear-gradient(135deg,rgba(193,53,132,.46),rgba(247,119,55,.28));
  box-shadow:0 8px 20px rgba(8,21,38,.10);
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.home-hero-instagram-link:nth-child(2){
  background:linear-gradient(135deg,rgba(63,81,181,.38),rgba(193,53,132,.34));
}
.home-hero-instagram-link:hover{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.28);
  background:linear-gradient(135deg,rgba(193,53,132,.62),rgba(247,119,55,.38));
}
.home-hero-instagram-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:10px;
  background:rgba(255,255,255,.15);
}
.home-hero-instagram-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
.home-hero-instagram-copy{display:grid;gap:1px;min-width:0}
.home-hero-instagram-copy small{font-size:.58rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.68);font-weight:850}
.home-hero-instagram-copy b{font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-hero-instagram-arrow{font-size:.95rem;color:rgba(255,255,255,.72)}
.home-hero-social-icons{display:flex;flex-wrap:wrap;gap:7px!important}
.home-hero-social-icons .social-icon-link{
  width:35px;
  height:35px;
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.15);
  box-shadow:none;
}
.home-hero-social-icons .social-icon{color:#fff}

.home-social-showcase{
  padding:28px 0 30px;
  background:linear-gradient(180deg,#f8fbff 0%,#f3f7fb 100%);
  border-bottom:1px solid rgba(15,77,138,.07);
}
.home-social-showcase-wrap{
  width:min(1320px,calc(100% - 40px));
}
.home-social-showcase-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:32px;
  margin-bottom:18px;
}
.home-social-showcase-heading h2{
  margin:3px 0 0;
  font-size:clamp(1.75rem,2.6vw,2.55rem);
  line-height:1.03;
  color:#162843;
  letter-spacing:-.035em;
}
.home-social-showcase-heading p{
  max-width:560px;
  margin:0;
  color:#657791;
  line-height:1.6;
  font-size:.95rem;
}
.home-social-instagram-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-bottom:14px;
}
.home-social-instagram-card{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:112px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr) 34px;
  align-items:center;
  gap:15px;
  padding:18px 20px;
  border-radius:22px;
  color:#fff;
  text-decoration:none;
  box-shadow:0 13px 30px rgba(47,34,82,.12);
  transition:transform .2s ease,box-shadow .2s ease;
}
.home-social-instagram-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(130deg,#833ab4 0%,#c13584 42%,#e1306c 68%,#f77737 100%);
  z-index:-2;
}
.home-social-instagram-card.is-secondary::before{
  background:linear-gradient(130deg,#17365d 0%,#235c94 48%,#8c3b9c 100%);
}
.home-social-instagram-card::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  border-radius:50%;
  right:-72px;
  top:-105px;
  background:rgba(255,255,255,.13);
  z-index:-1;
}
.home-social-instagram-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 36px rgba(47,34,82,.18);
}
.home-social-instagram-card-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:54px;
  height:54px;
  border-radius:17px;
  background:rgba(255,255,255,.15);
  border:1px solid rgba(255,255,255,.19);
}
.home-social-instagram-card-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8}
.home-social-instagram-card-copy{display:grid;gap:2px;min-width:0}
.home-social-instagram-card-copy small{font-size:.67rem;text-transform:uppercase;letter-spacing:.09em;color:rgba(255,255,255,.72);font-weight:850}
.home-social-instagram-card-copy strong{font-size:1.08rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-social-instagram-card-copy>span{font-size:.78rem;color:rgba(255,255,255,.77)}
.home-social-instagram-card-arrow{
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:11px;
  background:rgba(255,255,255,.12);
  font-size:1.05rem;
}
.home-social-channel-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.home-social-channel{
  min-width:0;
  display:grid;
  grid-template-columns:40px minmax(0,1fr) 20px;
  align-items:center;
  gap:10px;
  min-height:62px;
  padding:10px 12px;
  border-radius:17px;
  background:#fff;
  border:1px solid rgba(15,77,138,.09);
  color:#263a59;
  text-decoration:none;
  box-shadow:0 6px 18px rgba(15,42,74,.035);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.home-social-channel:hover{
  transform:translateY(-2px);
  border-color:rgba(15,77,138,.18);
  box-shadow:0 11px 24px rgba(15,42,74,.075);
}
.home-social-channel-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:40px;
  height:40px;
  border-radius:12px;
  background:#f2f7fc;
  color:#0f4d8a;
}
.home-social-channel-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.home-social-channel-youtube .home-social-channel-icon{color:#d62828;background:#fff2f2}
.home-social-channel-facebook .home-social-channel-icon{color:#1877f2;background:#eef5ff}
.home-social-channel-tiktok .home-social-channel-icon{color:#111827;background:#f2f3f5}
.home-social-channel-kwai .home-social-channel-icon{color:#ff6b00;background:#fff4eb}
.home-social-channel-x .home-social-channel-icon{color:#111827;background:#f2f3f5}
.home-social-channel-wikipedia .home-social-channel-icon{color:#374151;background:#f4f5f6}
.home-social-channel-email .home-social-channel-icon{color:#0f4d8a;background:#eef6ff}
.home-social-channel-label{font-weight:850;font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-social-channel-arrow{color:#0f4d8a;font-weight:900}

@media (max-width:1050px){
  .home-social-channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .home-hero-instagram-row{grid-template-columns:1fr}
  .home-social-showcase{padding:24px 0}
  .home-social-showcase-wrap{width:min(100% - 24px,1320px)}
  .home-social-showcase-heading{display:grid;gap:8px}
  .home-social-instagram-grid{grid-template-columns:1fr}
  .home-social-channel-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:480px){
  .home-social-channel-grid{grid-template-columns:1fr}
  .home-social-instagram-card{grid-template-columns:48px minmax(0,1fr) 30px;padding:15px}
  .home-social-instagram-card-icon{width:48px;height:48px;border-radius:15px}
}


/* Vídeos das propostas - padrão vertical 9:16 */
.proposal-video-frame{
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
}

.proposal-video-frame video,
.proposal-video-frame iframe{
  display:block;
  width:min(100%, 430px);
  aspect-ratio:9/16;
  height:auto;
  border:0;
  border-radius:18px;
  object-fit:contain;
  background:#091521;
}
