* { margin:0; padding:0; box-sizing:border-box; }
:root {
  --orange: #F47920;
  --red: #ED1C24;
  --dark: #1A1A1A;
  --gray: #555;
  --light: #F8F8F8;
  --white: #fff;
}
body { font-family:'Barlow',sans-serif; color:var(--dark); background:var(--white); min-height:100vh; }

/* STRIPE */
.stripe { height:5px; display:flex; position:fixed; top:0; left:0; right:0; z-index:200; }
.stripe .g { flex:1; background:#006600; }
.stripe .r { flex:1; background:var(--red); }
.stripe .o { flex:1; background:var(--orange); }

/* HEADER */
header {
  position:fixed; top:5px; left:0; right:0; z-index:100;
  background:white;
  box-shadow:0 2px 20px rgba(0,0,0,0.08);
}
.header-top {
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 40px;
  border-bottom:1px solid #F0F0F0;
}
.logo img { height:40px; display:block; }
.header-right {
  display:flex; align-items:center; gap:20px;
}
.header-location {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:13px;
  letter-spacing:3px; text-transform:uppercase; color:#BBB;
}
.header-fb {
  display:flex; align-items:center; justify-content:center;
  color:var(--orange);
  text-decoration:none; border:2px solid var(--orange);
  padding:7px 10px; transition:all .2s;
}
.header-fb:hover { background:var(--orange); color:white; }
.header-socials { display:flex; gap:8px; }

/* TABS NAV */
.tabs-nav {
  display:flex; align-items:stretch;
  border-bottom:3px solid var(--orange);
  overflow-x:auto;
  padding:0 40px;
  background:white;
}
.tab-btn {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:11px;
  letter-spacing:2.5px; text-transform:uppercase;
  color:#AAA; background:none; border:none;
  padding:14px 20px; cursor:pointer;
  border-bottom:3px solid transparent;
  margin-bottom:-3px;
  white-space:nowrap;
  transition:all .2s;
}
.tab-btn:hover { color:var(--dark); }
.tab-btn.active {
  color:var(--orange);
  border-bottom:3px solid var(--orange);
  font-weight:800;
}

/* CONTENT */
.content {
  padding-top:130px; /* header height */
  min-height:100vh;
}
.tab-panel { display:none; }
.tab-panel.active { display:block; }

/* ── TAB: INÍCIO ── */
.inicio {
  min-height:calc(100vh - 130px);
  display:flex; align-items:center;
  padding:60px 8%;
  background:white;
}
.inicio-inner { max-width:800px; }
.inicio-eyebrow {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:600; font-size:11px;
  letter-spacing:4px; text-transform:uppercase;
  color:var(--orange); margin-bottom:20px;
}
.inicio-title {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:clamp(56px,8vw,100px);
  line-height:0.93; text-transform:uppercase;
  color:var(--dark); margin-bottom:28px;
}
.inicio-title span { color:var(--orange); font-style:italic; display:block; }
.inicio-desc {
  font-size:17px; color:var(--gray); line-height:1.75;
  max-width:540px; margin-bottom:40px;
}
.btn-primary {
  background:var(--orange); color:white;
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:13px;
  letter-spacing:2px; text-transform:uppercase;
  padding:14px 28px; border:none; cursor:pointer;
  transition:opacity .2s; margin-right:12px;
}
.btn-primary:hover { opacity:0.85; }
.btn-outline {
  border:2px solid var(--dark); color:var(--dark);
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:13px;
  letter-spacing:2px; text-transform:uppercase;
  padding:12px 24px; background:none; cursor:pointer; transition:all .2s;
}
.btn-outline:hover { background:var(--dark); color:white; }

/* ── TAB: SOBRE ── */
.sobre { padding:60px 8%; background:var(--light); min-height:calc(100vh - 130px); }
.sec-eyebrow {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:10px;
  letter-spacing:4px; text-transform:uppercase;
  color:var(--orange); margin-bottom:10px;
}
.sec-title {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:clamp(36px,5vw,56px);
  text-transform:uppercase; color:var(--dark);
  line-height:1; margin-bottom:40px;
}
.sec-title span { color:var(--orange); }
.sobre-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:2px; margin-bottom:48px;
}
.sobre-card {
  background:white; padding:36px 28px;
  border-top:4px solid transparent; transition:border-color .2s;
}
.sobre-card:hover { border-color:var(--orange); }
.sobre-num {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:52px;
  color:var(--orange); opacity:0.2; line-height:1; margin-bottom:8px;
}
.sobre-card h3 {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:22px;
  text-transform:uppercase; color:var(--dark);
  letter-spacing:1px; margin-bottom:12px;
}
.sobre-card p { font-size:14px; color:var(--gray); line-height:1.65; }

/* ── TAB: EQUIPA ── */
.equipa { padding:60px 8%; background:var(--light); min-height:calc(100vh - 130px); }
.equipa .sec-title { color:var(--dark); }
.equipa-principal {
  display:grid; grid-template-columns:repeat(4,1fr);
  gap:32px; margin-bottom:48px;
}
.equipa-vogais {
  display:grid; grid-template-columns:repeat(5,1fr); gap:20px;
}
.equipa-sep {
  display:flex; align-items:center; gap:16px; margin-bottom:32px;
}
.equipa-sep::before, .equipa-sep::after {
  content:''; flex:1; height:1px; background:rgba(0,0,0,0.08);
}
.equipa-sep span {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:9px;
  letter-spacing:4px; text-transform:uppercase; color:#CCC;
}
.pessoa { display:flex; flex-direction:column; align-items:center; text-align:center; }
.pessoa-cargo {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:600; font-size:8px;
  letter-spacing:2.5px; text-transform:uppercase;
  color:var(--orange); margin-bottom:12px; min-height:16px;
}
.pessoa-ring {
  border-radius:50%; overflow:hidden;
  border:3px solid var(--orange); margin-bottom:12px; background:#eee;
}
.pessoa-ring.lg { width:120px; height:120px; }
.pessoa-ring.sm { width:96px; height:96px; border-width:2px; }
.pessoa-ring img {
  width:100%; height:100%;
  object-fit:cover; object-position:center 5%; display:block;
}
.pessoa-nome {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:13px;
  text-transform:uppercase; color:var(--dark); line-height:1.3;
}
.pessoa-nome.sm { font-size:11px; }

/* ── TAB: ELEITOS LOCAIS ── */
.eleitos { padding:60px 8%; background:var(--light); min-height:calc(100vh - 130px); }
.eleitos-intro {
  background:white; padding:24px 28px;
  border-top:4px solid var(--orange);
  margin-bottom:48px;
  font-size:15px; color:var(--gray); line-height:1.75;
}
.eleitos-grupo { margin-bottom:52px; }
.eleitos-grupo-header {
  display:flex; align-items:center; gap:16px; margin-bottom:24px;
}
.eleitos-grupo-header::after {
  content:''; flex:1; height:1px; background:rgba(0,0,0,0.10);
}
.eleitos-grupo-label {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:11px;
  letter-spacing:4px; text-transform:uppercase;
  color:var(--orange); white-space:nowrap;
}
.eleitos-grupo-count {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:10px;
  letter-spacing:2px; text-transform:uppercase;
  color:#CCC; white-space:nowrap;
}
.eleitos-grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
.eleitos-grid-2 { display:grid; grid-template-columns:repeat(2,1fr); gap:2px; max-width:680px; }
.eleitos-grid-7 { display:grid; grid-template-columns:repeat(4,1fr); gap:2px; }
.eleito-card {
  background:white; padding:30px 20px;
  border-top:4px solid var(--orange);
  display:flex; flex-direction:column; align-items:center;
  text-align:center; transition:border-color .2s;
}
.eleito-card:hover { border-color:var(--dark); }
.eleito-avatar {
  width:80px; height:80px; border-radius:50%;
  background:var(--orange);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:14px; flex-shrink:0;
}
.eleito-initials {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:26px;
  color:white; text-transform:uppercase; line-height:1;
  letter-spacing:-1px;
}
.eleito-nome {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:15px;
  text-transform:uppercase; color:var(--dark);
  line-height:1.2; margin-bottom:7px;
}
.eleito-cargo {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:600; font-size:9px;
  letter-spacing:2.5px; text-transform:uppercase;
  color:var(--orange);
}
.eleito-lugar {
  font-size:12px; color:#AAA;
  margin-top:5px; font-style:italic;
}
.eleito-card.junta { border-top-color:#1A6B3C; }
.eleito-card.junta .eleito-avatar { background:#1A6B3C; }
.eleito-card.junta .eleito-cargo { color:#1A6B3C; }
.eleito-card.deputado { border-top-color:#777; }
.eleito-card.deputado .eleito-avatar { background:#777; }
.eleito-card.deputado .eleito-cargo { color:#777; }

/* ── TAB: PROGRAMA ── */
.programa { padding:60px 8%; background:var(--light); min-height:calc(100vh - 130px); }
.pilares { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; margin-bottom:40px; }
.pilar {
  background:white; padding:36px 28px;
  border-top:4px solid #EBEBEB; transition:border-color .2s;
}
.pilar:hover { border-color:var(--orange); }
.pilar-num {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:11px;
  letter-spacing:3px; text-transform:uppercase;
  color:var(--orange); margin-bottom:6px;
}
.pilar h3 {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:26px;
  text-transform:uppercase; color:var(--dark); margin-bottom:6px;
}
.pilar-sub { font-size:12px; color:#AAA; margin-bottom:18px; font-style:italic; }
.pilar ul { list-style:none; display:flex; flex-direction:column; gap:8px; }
.pilar ul li {
  font-size:14px; color:var(--gray); line-height:1.5;
  padding-left:14px; position:relative;
}
.pilar ul li::before {
  content:'›'; position:absolute; left:0; color:var(--orange); font-weight:700;
}
.principios-wrap { margin-top:40px; }
.principios-label {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:10px;
  letter-spacing:4px; text-transform:uppercase;
  color:#AAA; text-align:center; margin-bottom:16px;
}
.principios { display:flex; gap:2px; }
.principio {
  flex:1; padding:20px 12px; text-align:center;
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:13px;
  text-transform:uppercase; letter-spacing:1px; color:white;
}
.principio:nth-child(1) { background:#555; }
.principio:nth-child(2) { background:#888; }
.principio:nth-child(3) { background:#F4B880; color:var(--dark); }
.principio:nth-child(4) { background:var(--orange); }
.principio:nth-child(5) { background:var(--red); }

/* ── TAB: AGENDA ── */
.agenda { padding:60px 8%; background:white; min-height:calc(100vh - 130px); }
.agenda-vazia {
  background:var(--light); border:2px dashed #E0E0E0;
  padding:80px 40px; text-align:center; margin-top:8px;
}
.agenda-vazia p {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:16px;
  letter-spacing:3px; text-transform:uppercase; color:#CCC;
}
.evento-card {
  display:flex; gap:0; margin-bottom:2px; background:white;
  border-top:4px solid var(--orange);
}
.evento-data {
  background:var(--orange); color:white;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:24px 32px; min-width:110px; flex-shrink:0;
}
.evento-dia {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:52px; line-height:1;
}
.evento-mes {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:13px;
  letter-spacing:3px; text-transform:uppercase;
  margin-top:4px;
}
.evento-corpo {
  padding:24px 28px; display:flex; flex-direction:column; justify-content:center;
}
.evento-tag {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:10px;
  letter-spacing:3px; text-transform:uppercase;
  color:var(--orange); margin-bottom:6px;
}
.evento-titulo {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:22px;
  text-transform:uppercase; color:var(--dark);
  line-height:1.2; margin-bottom:8px;
}
.evento-desc {
  font-size:14px; color:#666; line-height:1.6; margin-bottom:10px;
}
.evento-local {
  font-size:12px; color:#AAA;
}
.evento-local svg { vertical-align:middle; margin-right:4px; }

/* ── TAB: CONTACTO ── */
.contacto { padding:60px 8%; background:var(--light); min-height:calc(100vh - 130px); }
.contacto-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; }
.contacto-info h3 {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:22px;
  text-transform:uppercase; color:var(--dark); margin-bottom:16px;
}
.contacto-info p { font-size:15px; color:var(--gray); line-height:1.7; margin-bottom:24px; }
.contacto-item {
  display:flex; align-items:center; gap:12px;
  margin-bottom:16px;
}
.contacto-item .ci-label {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:10px;
  letter-spacing:3px; text-transform:uppercase; color:#AAA;
  margin-bottom:2px;
}
.contacto-item .ci-value {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:16px; color:var(--dark);
}
.contacto-item .ci-icon {
  width:44px; height:44px; background:var(--light);
  display:flex; align-items:center; justify-content:center;
  flex-shrink:0;
}
.fb-box {
  background:var(--orange); padding:36px;
  display:flex; flex-direction:column; align-items:flex-start; gap:16px;
}
.fb-box h3 {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:28px;
  text-transform:uppercase; color:white; line-height:1;
}
.fb-box p { font-size:14px; color:rgba(255,255,255,0.8); line-height:1.6; }
.fb-btn {
  display:inline-flex; align-items:center; gap:8px;
  background:white; color:var(--orange);
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:13px;
  letter-spacing:2px; text-transform:uppercase;
  padding:12px 22px; text-decoration:none; transition:opacity .2s;
}
.fb-btn:hover { opacity:0.9; }

/* FOOTER */
footer {
  background:#F5F0E8; padding:24px 40px;
  display:flex; align-items:center; justify-content:space-between;
  border-top:3px solid var(--orange);
}
.footer-logo img { height:30px; }
.footer-info {
  text-align:center; font-size:11px; color:#555; letter-spacing:1px;
}
.footer-info strong {
  display:block; font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:14px; color:#1A1A1A;
  letter-spacing:2px; text-transform:uppercase; margin-bottom:3px;
}

/* MOBILE */
@media (max-width:768px) {
  /* Header */
  .header-top { padding:12px 20px; }
  .header-location { display:none; }
  .logo img { height:32px; }
  .header-fb, .header-ig { padding:6px 8px; }

  /* Tabs nav */
  .tabs-nav { padding:0 8px; gap:0; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .tab-btn { padding:12px 8px; font-size:9px; letter-spacing:1px; white-space:nowrap; flex-shrink:0; }

  /* Content offset */
  .content { padding-top:115px; }

  /* Início */
  .inicio { padding:40px 6%; }
  .inicio-title { font-size:36px; }
  .inicio-desc { font-size:14px; }

  /* Sobre */
  .sobre { padding:40px 6%; }
  .sobre-grid { grid-template-columns:1fr; }

  /* Equipa */
  .equipa { padding:40px 6%; }
  .equipa-principal { grid-template-columns:repeat(2,1fr); gap:20px; }
  .equipa-vogais { grid-template-columns:repeat(3,1fr); }
  .pessoa-ring { width:100px; height:100px; }
  .pessoa-ring.lg { width:120px; height:120px; }

  /* Programa - grelhas inline */
  .programa { padding:40px 6%; }
  .prog-grid-3 { grid-template-columns:1fr !important; }
  .prog-grid-1 { grid-template-columns:1fr !important; }

  /* Eleitos Locais */
  .eleitos { padding:40px 6%; }
  .eleitos-grid-3 { grid-template-columns:1fr !important; }
  .eleitos-grid-2 { grid-template-columns:1fr !important; max-width:100% !important; }
  .eleitos-grid-7 { grid-template-columns:repeat(2,1fr) !important; }
  .eleitos-grupo-header { flex-wrap:wrap; gap:8px; }
  .eleitos-grupo-label { font-size:9px; letter-spacing:2px; }
  .eleito-avatar { width:70px; height:70px; }

  /* Agenda */
  .agenda { padding:40px 6%; }
  .evento-card { flex-direction:column; }
  .evento-data { flex-direction:row; gap:10px; align-items:center; justify-content:flex-start; padding:16px 20px; min-width:unset; }
  .evento-dia { font-size:36px; }
  .evento-mes { font-size:12px; margin-top:0; }
  .evento-corpo { padding:16px 20px; }
  .evento-titulo { font-size:18px; }

  /* Contacto */
  .contacto { padding:40px 6%; }
  .contacto-grid { grid-template-columns:1fr; }

  /* Footer */
  footer { flex-direction:column; gap:16px; text-align:center; padding:20px; }

  /* Secção título */
  .sec-title { font-size:32px; }
}

@media (max-width:480px) {
  /* Header */
  .header-top { padding:10px 16px; }

  /* Tabs */
  .tab-btn { padding:10px 6px; font-size:8px; }

  /* Equipa */
  .equipa-vogais { grid-template-columns:repeat(2,1fr); }
  .equipa-principal { grid-template-columns:1fr; max-width:200px; margin:0 auto 40px; }

  /* Eleitos */
  .eleitos-grid-7 { grid-template-columns:1fr !important; }
  .eleito-card { padding:20px 16px; }

  /* Evento */
  .evento-titulo { font-size:16px; }
  .evento-desc { font-size:13px; }

  /* Geral */
  .sec-title { font-size:26px; }
  .sec-eyebrow { font-size:9px; }

  /* Programa blocos inline */
  .prog-grid-3 { display:grid !important; grid-template-columns:1fr !important; }
  .prog-grid-3 > div { margin-bottom:2px; }
}

/* ── TAB: O CONCELHO EM NÚMEROS ── */
.concelho { padding:60px 8%; background:var(--light); min-height:calc(100vh - 130px); }
.num-intro {
  background:white; padding:28px 32px;
  border-top:4px solid var(--orange);
  margin-bottom:40px;
  font-size:16px; color:var(--gray); line-height:1.8;
  max-width:820px;
}
.num-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:20px; margin-bottom:44px; }
.num-card {
  background:white; border-top:4px solid var(--orange);
  padding:32px 26px; text-align:center;
}
.num-card .num-valor {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:52px; line-height:1;
  color:var(--orange); margin-bottom:10px;
}
.num-card .num-label {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800; font-size:13px; letter-spacing:2px;
  text-transform:uppercase; color:var(--dark); margin-bottom:10px;
}
.num-card .num-nota { font-size:13px; color:#999; line-height:1.6; }
.num-cta-box {
  background:var(--dark); padding:44px 36px; text-align:center;
}
.num-cta-box h3 {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:28px; text-transform:uppercase;
  letter-spacing:1px; color:white; margin-bottom:10px;
}
.num-cta-box p { font-size:15px; color:#AAA; line-height:1.7; max-width:640px; margin:0 auto 26px; }
.num-cta-btn {
  display:inline-block; background:var(--orange); color:white;
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:15px; letter-spacing:2.5px; text-transform:uppercase;
  padding:16px 38px; text-decoration:none; transition:background .2s;
}
.num-cta-btn:hover { background:#d96a15; }

.inicio-botoes { display:flex; flex-wrap:wrap; gap:12px; }
.inicio-botoes .btn-primary, .inicio-botoes .btn-outline { margin:0; }

/* ── Mobile: secções novas ── */
@media (max-width:768px) {
  .concelho { padding:40px 6%; }
  .num-intro { padding:20px 22px; font-size:14px; margin-bottom:28px; }
  .num-card .num-valor { font-size:42px; }
  .num-cta-box { padding:32px 22px; }
  .num-cta-box h3 { font-size:22px; }
  .num-cta-box p { font-size:14px; }
  .cf-box { padding:24px 20px; }
}
@media (max-width:480px) {
  .inicio-botoes { flex-direction:column; align-items:stretch; }
  .inicio-botoes .btn-primary, .inicio-botoes .btn-outline { width:100%; text-align:center; }
  .num-grid { grid-template-columns:1fr; }
  .num-cta-btn { display:block; padding:15px 20px; }
  .int-modal { padding:24px 20px; }
}

/* ─── Intervenções ─── */
.int-btn {
  margin-top:12px; padding:7px 14px;
  background:transparent; border:1px solid var(--orange); color:var(--orange);
  font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:10px;
  letter-spacing:2px; text-transform:uppercase; cursor:pointer;
}
.int-btn:hover { background:var(--orange); color:white; }
.int-modal-bg {
  display:none; position:fixed; inset:0; background:rgba(0,0,0,.65);
  z-index:200; align-items:center; justify-content:center; padding:20px;
}
.int-modal-bg.open { display:flex; }
.int-modal {
  background:white; border-top:4px solid var(--orange);
  padding:36px; width:560px; max-width:100%; max-height:85vh; overflow-y:auto;
}
.int-modal h3 {
  font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:22px;
  text-transform:uppercase; color:var(--dark); margin-bottom:2px;
}
.int-modal .int-sub {
  font-family:'Barlow Condensed',sans-serif; font-weight:600; font-size:10px;
  letter-spacing:2.5px; text-transform:uppercase; color:var(--orange); margin-bottom:24px;
}
.int-item { padding:14px 0; border-bottom:1px solid #EEE; }
.int-item:last-child { border-bottom:none; }
.int-item-data {
  font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:10px;
  letter-spacing:2px; text-transform:uppercase; color:#AAA;
}
.int-item-titulo { font-size:14px; color:var(--dark); margin:4px 0 2px; line-height:1.4; }
.int-item-sessao { font-size:12px; color:#999; font-style:italic; }
.int-item a {
  display:inline-block; margin-top:8px;
  font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:10px;
  letter-spacing:2px; text-transform:uppercase; color:var(--orange); text-decoration:none;
}
.int-item a:hover { text-decoration:underline; }
.int-vazio { font-size:14px; color:#999; font-style:italic; padding:8px 0 4px; }
.int-fechar {
  margin-top:24px; padding:9px 20px; background:var(--dark); color:white; border:none;
  font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:10px;
  letter-spacing:2px; text-transform:uppercase; cursor:pointer;
}

/* ─── Formulário de contacto ─── */
.cf-box { background:white; border-top:4px solid var(--orange); padding:36px; margin-top:28px; }
.cf-box h3 { font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:20px; text-transform:uppercase; color:var(--dark); margin-bottom:8px; }
.cf-intro { font-size:14px; color:var(--gray); line-height:1.6; margin-bottom:24px; }
.cf-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media (max-width:640px){ .cf-row { grid-template-columns:1fr; gap:0; } }
.cf-group { margin-bottom:16px; }
.cf-group label { display:block; font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:10px; letter-spacing:2px; text-transform:uppercase; color:#999; margin-bottom:6px; }
.cf-group input, .cf-group select, .cf-group textarea {
  width:100%; padding:11px 13px; background:#F8F8F8; border:1px solid #E0E0E0; color:var(--dark);
  font-family:inherit; font-size:14px; outline:none; border-radius:0;
}
.cf-group input:focus, .cf-group select:focus, .cf-group textarea:focus { border-color:var(--orange); }
.cf-group textarea { resize:vertical; }
.cf-nota { font-size:11px; color:#AAA; margin-bottom:18px; font-style:italic; }
.cf-btn {
  padding:13px 28px; background:var(--orange); color:white; border:none; cursor:pointer;
  font-family:'Barlow Condensed',sans-serif; font-weight:900; font-size:13px; letter-spacing:2px; text-transform:uppercase;
}
.cf-btn:hover { background:#d96a15; }
.cf-btn:disabled { opacity:.5; cursor:not-allowed; }
.cf-feedback { margin-top:14px; font-size:14px; display:none; }
.cf-feedback.ok { color:#1A6B3C; display:block; }
.cf-feedback.erro { color:#c62828; display:block; }

/* ─── Avaliações das intervenções ─── */
.aval-caixa { margin-top:12px; padding-top:10px; border-top:1px dashed #E5E5E5; }
.aval-resumo { display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.aval-med { color:var(--orange); font-size:15px; letter-spacing:2px; }
.aval-num { font-size:12px; color:#999; }
.aval-abrir, .aval-ver {
  background:none; border:none; padding:0; cursor:pointer;
  font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:10px;
  letter-spacing:2px; text-transform:uppercase; color:var(--orange);
}
.aval-abrir:hover, .aval-ver:hover { text-decoration:underline; }
.aval-obrigado { font-size:12px; color:#1A6B3C; }
.aval-form { margin-top:10px; }
.aval-sel { font-size:24px; letter-spacing:4px; user-select:none; color:#CCC; margin-bottom:8px; }
.aval-sel span { cursor:pointer; }
.aval-sel span.on { color:var(--orange); }
.aval-form input[type=text], .aval-form textarea {
  width:100%; padding:9px 11px; background:#F8F8F8; border:1px solid #E0E0E0; color:var(--dark);
  font-family:inherit; font-size:13px; outline:none; border-radius:0; margin-bottom:8px;
}
.aval-form input:focus, .aval-form textarea:focus { border-color:var(--orange); }
.aval-form textarea { resize:vertical; }
.aval-enviar {
  padding:8px 18px; background:var(--orange); color:white; border:none; cursor:pointer;
  font-family:'Barlow Condensed',sans-serif; font-weight:800; font-size:10px; letter-spacing:2px; text-transform:uppercase;
}
.aval-enviar[disabled] { opacity:.6; cursor:not-allowed; }
.aval-fb { font-size:12px; margin-top:6px; }
.aval-fb.ok { color:#1A6B3C; }
.aval-fb.erro { color:#c62828; }
.aval-nota { font-size:11px; color:#AAA; font-style:italic; margin-top:6px; }
.aval-lista { margin-top:8px; }
.aval-com { padding:8px 0; border-top:1px solid #F0F0F0; }
.aval-com-meta { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:#AAA; }
.aval-com-txt { font-size:13px; color:var(--dark); line-height:1.5; margin-top:2px; }
