

:root{
  --bg:#F3F5F8;
  --surface:#FFFFFF;
  --text:#16202B;
  --muted:#5A6675;
  --accent:#E8862A;
  --accent2:#21364B;

  --site-bg:#F3F5F8;
  --site-surface:#FFFFFF;
  --site-text:#16202B;
  --site-muted:#5A6675;
  --site-accent:#E8862A;

  --linha:rgba(90,102,117,.26);     
  --linha-forte:rgba(90,102,117,.42);
  --sobre-escura:rgba(243,245,248,.16);
  --ritmo:56px;
  --cont:1100px;
  --raio:6px;

  --f-titulo:"Bitter",Georgia,serif;
  --f-corpo:"Nunito Sans",system-ui,sans-serif}

*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%}

body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:var(--f-corpo);
  font-size:16px;
  line-height:1.6;
  overflow-x:hidden}

img{max-width:100%}

h1,h2,h3,h4{
  font-family:var(--f-titulo);
  font-weight:700;
  line-height:1.15;
  margin:0 0 .5em;
  color:var(--text)}

a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}

:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px}

.nvt-cont{
  width:100%;
  max-width:var(--cont);
  margin-inline:auto;
  padding-inline:clamp(18px,5vw,28px)}

.nvt-sec{
  padding-block:var(--ritmo);
  border-bottom:1px solid var(--linha)}

.nvt-sec--escura{
  background:var(--accent2);
  color:#EAF0F6;
  border-color:var(--sobre-escura)}
.nvt-sec--escura h2,
.nvt-sec--escura h3,
.nvt-sec--escura h4{color:#FFFFFF}
.nvt-sec--escura a{color:#F0B075}

.nvt-indice{
  display:flex;
  align-items:baseline;
  gap:14px;
  flex-wrap:wrap;
  padding-bottom:12px;
  margin-bottom:28px;
  border-bottom:1px solid var(--linha-forte)}
.nvt-indice-num{
  font-family:var(--f-titulo);
  font-weight:700;
  font-size:clamp(2.2rem,5vw,3.2rem);
  color:var(--accent);
  line-height:1;
  min-width:0}
.nvt-indice-txt{
  font-family:var(--f-titulo);
  font-weight:600;
  font-size:clamp(1.3rem,3vw,1.7rem);
  margin:0}
.nvt-sec--escura .nvt-indice{border-color:var(--sobre-escura)}

.nvt-lead{
  max-width:68ch;
  color:var(--muted);
  font-size:1.06rem}
.nvt-sec--escura .nvt-lead{color:#C4D0DC}

.nvt-topo{
  position:sticky;
  top:0;
  z-index:60;
  background:var(--bg);
  border-bottom:1px solid var(--linha)}
.nvt-topo.is-scrolled{box-shadow:0 1px 0 var(--linha),0 6px 18px rgba(22,32,43,.06)}

.nvt-topo-barra{
  background:var(--accent);
  color:#FFF6EC;
  font-size:13px;
  line-height:1.3}
.nvt-topo-barra .nvt-cont{
  min-height:34px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:6px 20px;
  padding-block:5px}
.nvt-topo-horario{display:flex;align-items:center;gap:8px;min-width:0}
.nvt-topo-contactos{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px 18px;
  min-width:0}
.nvt-topo-barra a{color:#FFF6EC}
.nvt-topo-barra i{opacity:.85}

.nvt-topo-linha{
  min-height:68px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-block:10px}

.nvt-marca{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-width:0}
.nvt-marca:hover{text-decoration:none}
.nvt-marca svg{display:block;width:28px;height:28px;flex:none}
.nvt-marca-nome{
  font-family:var(--f-titulo);
  font-weight:700;
  font-size:1.45rem;
  letter-spacing:-.01em;
  color:var(--text);
  line-height:1}
.nvt-marca-nome b{color:var(--accent);font-weight:700}

.nvt-nav{display:flex}
.nvt-nav ul{
  list-style:none;
  margin:0;padding:0;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px 6px}
.nvt-nav a{
  display:block;
  padding:8px 12px;
  color:var(--text);
  font-weight:600;
  font-size:.96rem;
  letter-spacing:-.01em;
  border-radius:var(--raio)}
.nvt-nav a:hover{color:var(--accent);text-decoration:none}
.nvt-nav a.is-active{color:var(--accent)}

.nvt-menu-btn{
  display:none;
  align-items:center;
  gap:8px;
  background:none;
  border:1px solid var(--linha-forte);
  border-radius:var(--raio);
  padding:9px 12px;
  color:var(--text);
  font:inherit;
  font-weight:600;
  cursor:pointer}
.nvt-menu-btn i{font-size:1.1rem}

.nvt-offcanvas{
  position:fixed;
  top:0;right:0;
  height:100%;
  width:min(84vw,320px);
  background:var(--surface);
  border-left:1px solid var(--linha);
  transform:translateX(100%);
  transition:transform .3s ease;
  z-index:120;
  display:flex;
  flex-direction:column;
  padding:20px}
.nvt-offcanvas.is-open{transform:none}
.nvt-offcanvas-topo{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-bottom:14px;
  margin-bottom:14px;
  border-bottom:1px solid var(--linha)}
.nvt-offcanvas nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.nvt-offcanvas nav a{
  display:block;
  padding:12px 10px;
  color:var(--text);
  font-weight:600;
  border-radius:var(--raio);
  border-bottom:1px solid var(--linha)}
.nvt-offcanvas nav a:hover{color:var(--accent);text-decoration:none}
.nvt-fechar{
  background:none;border:none;color:var(--text);
  font-size:1.4rem;cursor:pointer;line-height:1;padding:6px}
.nvt-overlay{
  position:fixed;inset:0;
  background:rgba(22,32,43,.45);
  opacity:0;visibility:hidden;
  transition:opacity .3s ease;
  z-index:110}
.nvt-overlay.is-open{opacity:1;visibility:visible}

.nvt-hero{
  padding-block:clamp(48px,8vw,88px);
  border-bottom:1px solid var(--linha);
  background:linear-gradient(180deg,#FFFFFF 0%,var(--bg) 100%)}
.nvt-hero-sobretitulo{
  font-family:var(--f-titulo);
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.78rem;
  color:var(--accent);
  margin-bottom:14px}
.nvt-hero-titulo{
  font-size:clamp(2.3rem,6.4vw,4.2rem);
  letter-spacing:-.02em}
.nvt-hero-texto{
  max-width:60ch;
  color:var(--muted);
  font-size:1.1rem;
  margin:0 0 36px}

.nvt-hero-stats{
  display:flex;
  flex-wrap:wrap;
  gap:0;
  border-top:2px solid var(--text)}
.nvt-stat{
  flex:1 1 180px;
  min-width:0;
  padding:18px 20px 18px 0;
  border-bottom:1px solid var(--linha)}
.nvt-stat:not(:last-child){margin-right:28px}
.nvt-stat-num{
  font-family:var(--f-titulo);
  font-weight:700;
  font-size:clamp(2.4rem,6vw,3.6rem);
  color:var(--accent);
  line-height:1;
  display:block}
.nvt-stat-rotulo{
  color:var(--muted);
  font-size:.92rem;
  margin-top:6px}

.nvt-page-hero{
  padding-block:clamp(40px,6vw,64px);
  border-bottom:1px solid var(--linha);
  text-align:center}
.nvt-page-hero h1{font-size:clamp(2rem,5vw,3rem)}
.nvt-page-hero .nvt-lead{margin-inline:auto}

.nvt-trust{
  display:flex;
  flex-wrap:wrap;
  gap:14px 28px;
  margin-top:28px;
  padding-top:22px;
  border-top:1px solid var(--linha)}
.nvt-trust li{
  list-style:none;
  display:flex;
  align-items:center;
  gap:9px;
  color:var(--muted);
  font-size:.95rem;
  min-width:0}
.nvt-trust i{color:var(--accent)}
.nvt-trust ul{display:contents;margin:0;padding:0}

.nvt-porque{
  display:grid;
  gap:1px;
  background:var(--linha);
  border:1px solid var(--linha);
  border-radius:var(--raio);
  overflow:hidden;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.nvt-porque-arg{
  background:var(--surface);
  padding:28px 26px}
.nvt-sec--escura .nvt-porque{background:var(--sobre-escura);border-color:var(--sobre-escura)}
.nvt-sec--escura .nvt-porque-arg{background:var(--accent2)}
.nvt-porque-num{
  font-family:var(--f-titulo);
  font-weight:700;
  color:var(--accent);
  font-size:1.1rem;
  letter-spacing:.06em}
.nvt-porque-titulo{font-size:1.2rem;margin:.4em 0 .4em}
.nvt-porque-texto{color:var(--muted);margin:0;font-size:.98rem}
.nvt-sec--escura .nvt-porque-texto{color:#C4D0DC}

.nvt-porque-arg--prova{
  display:grid;
  gap:16px;
  grid-template-columns:1fr}
.nvt-prova{
  border-left:3px solid var(--accent);
  padding-left:14px;
  color:var(--muted);
  font-size:.92rem}
.nvt-prova b{color:var(--text);display:block;font-family:var(--f-titulo)}
.nvt-sec--escura .nvt-prova b{color:#fff}

.nvt-porque-longo{
  max-width:70ch;
  font-size:1.08rem}
.nvt-porque-longo p{margin:0 0 1.1em;color:var(--text)}
.nvt-sec--escura .nvt-porque-longo p{color:#DCE4EC}

.nvt-galeria{
  display:grid;
  gap:24px;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.nvt-galeria--larga{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}

.nvt-inset{
  border:1px solid var(--linha);
  border-radius:var(--raio);
  background:var(--surface);
  overflow:hidden}
.nvt-inset-fig{
  margin:0;
  aspect-ratio:4/3;
  overflow:hidden;
  border-bottom:1px solid var(--linha)}
.nvt-inset--larga .nvt-inset-fig{aspect-ratio:16/9}
.nvt-inset-fig img{display:block;width:100%;height:100%;object-fit:cover}
.nvt-inset-legenda{
  padding:14px 16px;
  color:var(--muted);
  font-size:.9rem}
.nvt-inset-titulo{
  font-family:var(--f-titulo);
  font-weight:600;
  color:var(--text);
  font-size:1.05rem;
  margin:0 0 4px}

.nvt-antes-depois{
  display:grid;
  gap:24px;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.nvt-estado{
  border:1px solid var(--linha);
  border-radius:var(--raio);
  padding:24px;
  background:var(--surface)}
.nvt-estado-rotulo{
  font-family:var(--f-titulo);
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:.74rem;
  color:var(--muted);
  margin-bottom:8px}
.nvt-estado--agora{border-color:var(--accent);border-left-width:3px}
.nvt-estado--agora .nvt-estado-rotulo{color:var(--accent)}

.nvt-metricas{
  width:100%;
  border-collapse:collapse;
  margin-top:28px;
  font-size:.95rem}
.nvt-metricas caption{
  text-align:left;
  font-family:var(--f-titulo);
  font-weight:600;
  color:var(--muted);
  padding-bottom:10px}
.nvt-metricas th,
.nvt-metricas td{
  text-align:left;
  padding:11px 14px;
  border-bottom:1px solid var(--linha);
  min-width:0}
.nvt-metricas thead th{
  font-size:.72rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--muted)}
.nvt-metricas td:last-child{
  font-family:var(--f-titulo);
  font-weight:700;
  color:var(--accent)}
.nvt-sec--escura .nvt-metricas th,
.nvt-sec--escura .nvt-metricas td{border-color:var(--sobre-escura)}

.nvt-local{
  display:grid;
  gap:28px;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  align-items:start}
.nvt-local-fig{
  margin:0;
  aspect-ratio:4/3;
  border:1px solid var(--linha);
  border-radius:var(--raio);
  overflow:hidden}
.nvt-local-fig img{display:block;width:100%;height:100%;object-fit:cover}
.nvt-local-morada address{
  font-style:normal;
  font-size:1.05rem;
  line-height:1.7}
.nvt-local-horario{
  margin:18px 0;
  padding:16px 0;
  border-block:1px solid var(--linha)}
.nvt-local-horario dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:4px 18px}
.nvt-local-horario dt{color:var(--muted)}
.nvt-local-horario dd{margin:0;font-weight:600}
.nvt-transportes{list-style:none;margin:0;padding:0}
.nvt-transportes li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:7px 0;
  color:var(--muted);
  min-width:0}
.nvt-transportes i{color:var(--accent);margin-top:3px}

.nvt-interior{
  display:grid;
  gap:24px;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}

.nvt-form-inline{
  display:grid;
  gap:28px;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  align-items:center}
.nvt-form-inline-fig{
  margin:0;
  aspect-ratio:3/4;
  border:1px solid var(--linha);
  border-radius:var(--raio);
  overflow:hidden}
.nvt-form-inline-fig img{display:block;width:100%;height:100%;object-fit:cover}
.nvt-form-inline figcaption{
  padding-top:10px;
  color:var(--muted);
  font-size:.9rem}

.nvt-nao-fazemos{
  display:grid;
  gap:24px;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.nvt-coluna-faz,
.nvt-coluna-naofaz{
  border:1px solid var(--linha);
  border-radius:var(--raio);
  padding:24px;
  background:var(--surface)}
.nvt-coluna-faz ul,
.nvt-coluna-naofaz ul{list-style:none;margin:0;padding:0}
.nvt-coluna-faz li,
.nvt-coluna-naofaz li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:9px 0;
  border-bottom:1px solid var(--linha);
  min-width:0}
.nvt-coluna-faz i{color:var(--accent)}
.nvt-coluna-naofaz i{color:var(--muted)}
.nvt-encaminha{
  grid-column:1/-1;
  color:var(--muted);
  font-size:1rem;
  padding-top:6px}

.nvt-cta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border:1px solid var(--linha);
  border-radius:var(--raio);
  background:var(--surface);
  padding:32px}
.nvt-cta-info{min-width:0;flex:1 1 300px}
.nvt-cta-info h2{margin-bottom:.3em}
.nvt-cta-contactos{
  display:flex;
  flex-wrap:wrap;
  gap:8px 22px;
  margin-top:12px;
  color:var(--muted);
  font-size:.95rem}
.nvt-cta-contactos a{display:inline-flex;align-items:center;gap:7px}
.nvt-cta-acoes{display:flex;flex-wrap:wrap;gap:12px}

.nvt-cta--centrado{
  flex-direction:column;
  text-align:center;
  max-width:620px;
  margin-inline:auto}
.nvt-cta--centrado .nvt-cta-acoes{justify-content:center}

.nvt-contacto{
  display:grid;
  gap:32px;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  align-items:start}
.nvt-contacto-bloco address{font-style:normal;line-height:1.8}
.nvt-contacto-bloco dl{margin:18px 0 0;display:grid;gap:12px}
.nvt-contacto-bloco dt{
  font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.nvt-contacto-bloco dd{margin:0}
.nvt-contacto-bloco dd a{display:inline-flex;align-items:center;gap:8px;font-weight:600}

.action-dkj{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  font-family:var(--f-corpo);
  font-weight:700;
  font-size:.97rem;
  line-height:1.1;
  padding:13px 22px;
  border-radius:var(--raio);
  border:1px solid transparent;
  cursor:pointer;
  text-decoration:none;
  transition:background .18s ease,color .18s ease,border-color .18s ease}
.action-dkj--primary{background:var(--accent);color:#fff;border-color:var(--accent)}
.action-dkj--primary:hover{background:#cf7320;border-color:#cf7320;text-decoration:none}
.action-dkj--ghost{background:transparent;color:var(--text);border-color:var(--linha-forte)}
.action-dkj--ghost:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}
.nvt-sec--escura .action-dkj--ghost{color:#fff;border-color:rgba(234,240,246,.4)}
.nvt-sec--escura .action-dkj--ghost:hover{color:#F0B075;border-color:#F0B075}
.action-dkj:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.action-dkj:disabled{opacity:.5;cursor:not-allowed}

.nvt-form{display:grid;gap:16px}
.nvt-campo{display:grid;gap:6px}
.nvt-campo label{
  font-size:.85rem;
  font-weight:600;
  color:var(--text)}
.nvt-campo label .req{color:var(--accent)}
.input-7xa{
  width:100%;
  min-width:0;
  font:inherit;
  font-size:1rem;
  color:var(--text);
  background:var(--surface);
  border:1px solid var(--linha-forte);
  border-radius:var(--raio);
  padding:12px 14px;
  min-height:46px}
textarea.input-7xa{min-height:130px;resize:vertical}
.input-7xa::placeholder{color:var(--muted)}
.input-7xa:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px rgba(232,134,42,.2)}
.nvt-campo-duplo{
  display:flex;
  flex-wrap:wrap;
  gap:16px}
.nvt-campo-duplo .nvt-campo{flex:1 1 200px}
.nvt-erro{color:#c0531a;font-size:.82rem}

.block-t94{
  background:var(--surface);
  border:1px solid var(--linha);
  border-radius:var(--raio);
  padding:26px}

.badge-xp2{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:.72rem;
  font-weight:700;
  letter-spacing:.05em;
  text-transform:uppercase;
  padding:4px 10px;
  border-radius:100px;
  background:rgba(232,134,42,.12);
  color:#b8661d;
  border:1px solid rgba(232,134,42,.3)}

[data-collapse-item]{
  border:1px solid var(--linha);
  border-radius:var(--raio);
  background:var(--surface);
  margin-bottom:12px}
[data-acc-trigger]{
  width:100%;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  background:none;
  border:none;
  cursor:pointer;
  font:inherit;
  font-family:var(--f-titulo);
  font-weight:600;
  font-size:1.05rem;
  color:var(--text);
  text-align:left;
  padding:18px 20px}
[data-acc-trigger] i{transition:transform .3s ease;color:var(--accent)}
.is-open [data-acc-trigger] i{transform:rotate(180deg)}
[data-collapse-item] .nvt-fold-corpo{
  max-height:0;
  overflow:hidden;
  transition:max-height .3s ease}
.is-open .nvt-fold-corpo{max-height:600px}
.nvt-fold-corpo > div{padding:0 20px 20px;color:var(--muted)}

.slider-ufm{padding-bottom:44px}
.slider-ufm .swiper-slide{height:auto}
.swiper-pagination-bullet{background:var(--muted);opacity:.4}
.swiper-pagination-bullet-active{background:var(--accent);opacity:1}
.swiper-button-prev,
.swiper-button-next{
  color:var(--accent);
  width:38px;height:38px;
  background:var(--surface);
  border:1px solid var(--linha);
  border-radius:50%}
.swiper-button-prev::after,
.swiper-button-next::after{font-size:15px;font-weight:700}

.site-modal,
.popup-fmz{
  position:fixed;
  inset:0;
  z-index:200;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(22,32,43,.5);
  opacity:0;
  visibility:hidden;
  transition:opacity .25s ease}
.site-modal.is-open,
.popup-fmz.is-open{opacity:1;visibility:visible}
.site-modal-dialog,
.popup-fmz-dialog{
  background:var(--surface);
  border:1px solid var(--linha);
  border-radius:var(--raio);
  max-width:460px;
  width:100%;
  padding:30px;
  box-shadow:0 20px 50px rgba(22,32,43,.25)}
.popup-fmz-dialog h3{font-size:1.4rem}
.popup-fmz-dialog p{color:var(--muted)}
.popup-fmz-fechar{
  background:none;border:none;cursor:pointer;
  font-size:1.5rem;line-height:1;color:var(--muted);
  float:right;padding:0 0 10px 10px}

.nvt-rodape{
  background:var(--bg);
  border-top:1px solid var(--linha);
  padding-block:var(--ritmo) 0}
.nvt-rodape-grelha{
  display:grid;
  gap:24px;
  grid-template-columns:1.4fr repeat(auto-fit,minmax(150px,1fr))}
.nvt-rodape-marca .nvt-marca{margin-bottom:12px}
.nvt-rodape-blurb{color:var(--muted);font-size:.95rem}
.nvt-rodape-col h4{
  font-family:var(--f-corpo);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.09em;
  color:var(--muted);
  margin-bottom:14px}
.nvt-rodape-links{list-style:none;margin:0;padding:0}
.nvt-rodape-links li{margin-bottom:9px}
.nvt-rodape-links a{color:var(--text);font-size:15px}
.nvt-rodape-links a:hover{color:var(--accent)}
.nvt-rodape-contacto{color:var(--text);font-size:15px;font-style:normal;line-height:1.7}
.nvt-rodape-contacto a{color:var(--text)}
.nvt-rodape-contacto a:hover{color:var(--accent)}

.nvt-rodape-base{
  margin-top:var(--ritmo);
  border-top:1px solid var(--linha);
  padding-block:20px}
.nvt-rodape-base .nvt-cont{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:10px 24px;
  color:var(--muted);
  font-size:.85rem}
.nvt-rodape-legais{display:flex;flex-wrap:wrap;gap:8px 18px}
.nvt-rodape-legais a{color:var(--muted)}
.nvt-rodape-legais a:hover{color:var(--accent)}

#side-dock-olk{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:90}
#back-top-ibc{
  width:46px;height:46px;
  display:flex;align-items:center;justify-content:center;
  background:var(--accent2);
  color:#fff;
  border:none;
  border-radius:50%;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px);
  transition:opacity .25s ease,transform .25s ease,background .18s ease;
  box-shadow:0 6px 18px rgba(22,32,43,.22)}
#back-top-ibc.is-visible{opacity:1;visibility:visible;transform:none}
#back-top-ibc:hover{background:var(--accent)}

.nvt-legal{padding-block:var(--ritmo)}
.nvt-legal .nvt-cont{max-width:800px}
.nvt-legal h1{font-size:clamp(1.8rem,4vw,2.6rem)}
.nvt-legal h2{font-size:1.3rem;margin-top:2em}
.nvt-legal p,
.nvt-legal li{color:var(--text);max-width:72ch}
.nvt-legal address{font-style:normal}

@media (max-width:860px){
  .nvt-nav{display:none}
  .nvt-menu-btn{display:inline-flex}
}

@media (max-width:560px){
  :root{--ritmo:44px}
  .nvt-stat:not(:last-child){margin-right:0}
  .nvt-cta{padding:24px}
  .block-t94{padding:20px}
}

@media (prefers-reduced-motion:reduce){
  *{animation-duration:.001ms!important;transition-duration:.001ms!important}
}

.ck-wb8-overlay{position:fixed;inset:0;opacity:0;visibility:hidden;transition:.25s;z-index:9998}
.ck-wb8-overlay.is-open{opacity:1;visibility:visible}
.ck-wb8-panel{position:fixed;background:var(--site-surface,#fff);color:var(--site-text,#1a1a1a);
  box-shadow:0 20px 60px rgba(0,0,0,.28);padding:24px;opacity:0;visibility:hidden;transition:.25s;z-index:9999}
.ck-wb8-panel.is-open{opacity:1;visibility:visible}
.ck-wb8-panel h3{margin:0 0 8px;font-size:1.2rem}
.ck-wb8-panel>p{margin:0 0 16px;color:var(--site-muted,#666);font-size:.95rem}
.ck-wb8-cat{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid rgba(128,128,128,.2)}
.ck-wb8-cat h4{margin:0 0 2px;font-size:.98rem}
.ck-wb8-cat p{margin:0;color:var(--site-muted,#777);font-size:.85rem}
.ck-wb8-switch{position:relative;flex:0 0 auto;width:44px;height:24px}
.ck-wb8-switch input{opacity:0;width:0;height:0;position:absolute}
.ck-wb8-switch span{position:absolute;inset:0;background:#c9c9c9;border-radius:999px;transition:.2s;cursor:pointer}
.ck-wb8-switch span::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s}
.ck-wb8-switch input:checked+span{background:var(--site-accent,#2b7)}
.ck-wb8-switch input:checked+span::before{transform:translateX(20px)}
.ck-wb8-switch input:disabled+span{opacity:.6;cursor:not-allowed}
.ck-wb8-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.ck-wb8-actions button{flex:1;min-width:140px;padding:11px 16px;border:none;border-radius:10px;font:inherit;font-weight:600;cursor:pointer}
.ck-wb8-actions #ck-wb8-all{background:var(--site-accent,#2b7);color:#fff}
.ck-wb8-actions #ck-wb8-save{background:transparent;color:var(--site-text,#222);border:1px solid rgba(128,128,128,.4)}
.ck-wb8-links{display:flex;gap:16px;margin-top:14px;font-size:.85rem}
.ck-wb8-links a{color:var(--site-accent,#2b7);text-decoration:underline}
.ck-wb8-trigger{position:fixed;left:18px;bottom:18px;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;
  background:var(--site-surface,#fff);color:var(--site-accent,#2b7);box-shadow:0 6px 18px rgba(0,0,0,.2);z-index:9997;font-size:1.1rem}

.ck-wb8-overlay{background:transparent;pointer-events:none}
.ck-wb8-panel{left:24px;bottom:24px;width:min(380px,calc(100% - 32px));border-radius:16px;transform:translateY(24px)}
.ck-wb8-panel.is-open{transform:translateY(0)}
@media(max-width:520px){.ck-wb8-panel{left:16px;right:16px;width:auto}}
@media(max-width:520px){.ck-wb8-actions button{min-width:100%}}
#side-dock-olk{left:auto !important;right:18px !important}
@media(max-width:520px){#side-dock-olk{right:12px !important}}

.submit-ok-97b{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;
  padding:20px;background:rgba(8,10,14,.55);backdrop-filter:blur(2px)}
.submit-ok-97b.is-open{display:flex}
.submit-ok-97b__box{width:min(420px,100%);background:var(--site-surface,#fff);color:var(--site-text,#15181d);
  border-radius:16px;padding:32px 28px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.28);
  animation:submit-ok-97b-in .22s ease-out}
@keyframes submit-ok-97b-in{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:none}}
.submit-ok-97b__mark{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-size:26px;line-height:1;
  background:var(--site-accent,#2e7d5b);color:#fff}
.submit-ok-97b__title{margin:0 0 10px;font-size:1.35rem;line-height:1.25}
.submit-ok-97b__text{margin:0 0 24px;line-height:1.6;color:var(--site-muted,#5b6472)}
.submit-ok-97b__close{display:inline-block;cursor:pointer;border:0;border-radius:999px;
  padding:12px 30px;font:inherit;font-weight:600;background:var(--site-accent,#2e7d5b);color:#fff}
.submit-ok-97b__close:hover{filter:brightness(1.08)}
.submit-ok-97b__close:focus-visible{outline:2px solid var(--site-text,#15181d);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.submit-ok-97b__box{animation:none}}

*,*::before,*::after{box-sizing:border-box}
html,body{overflow-x:hidden;overflow-x:clip;max-width:100%}
img,svg,video,iframe,canvas{max-width:100%}
table{max-width:100%}

.simpleParallax{display:block;width:100%;height:100%}
.simpleParallax img{width:100%;height:100%;object-fit:cover}

blockquote, figure { margin-left: 0; margin-right: 0}

figure > blockquote, figure > figcaption { margin-left: 0; margin-right: 0}

html.no-aos [data-aos]{opacity:1 !important;transform:none !important}

@media(prefers-reduced-motion:reduce){
  [data-aos]{opacity:1 !important;transform:none !important;transition:none !important}
}

.legal-doc{max-width:72ch;margin:0 auto;padding:64px 20px;line-height:1.7}
.legal-doc h1{margin:0 0 .6em}
.legal-doc h2{margin:1.8em 0 .5em}
.legal-doc h3{margin:1.4em 0 .4em}
.legal-doc p,.legal-doc li{margin:0 0 .8em}
.legal-doc ul,.legal-doc ol{padding-left:1.4em;margin:0 0 1em}
.legal-doc table{width:100%;border-collapse:collapse;margin:0 0 1.2em}
.legal-doc th,.legal-doc td{border:1px solid currentColor;padding:.5em;text-align:left}

@media (max-width: 720px) {
  body { overflow-x: hidden}
  h1, h2, h3, p, li, td { overflow-wrap: break-word}
  
  input, select, textarea { max-width: 100%; min-width: 0}
  
  img, svg, video, iframe, table { max-width: 100%}
}

#off-canvas-cui{position:fixed;top:0;right:0;bottom:0;width:min(84vw,360px);padding:72px 28px 28px;background:var(--site-surface,#fff);color:var(--site-text,#111);box-shadow:-12px 0 40px rgba(0,0,0,.18);transform:translateX(100%);visibility:hidden;transition:transform .28s ease,visibility .28s;z-index:9999;overflow-y:auto}
#off-canvas-cui.is-open{transform:none;visibility:visible}
#off-canvas-cui a{display:block;padding:.6em 0;font-size:1.1rem;color:inherit;text-decoration:none}
#nav-overlay-d40{position:fixed;inset:0;background:rgba(0,0,0,.45);opacity:0;visibility:hidden;transition:.25s;z-index:9998}
#nav-overlay-d40.is-open{opacity:1;visibility:visible}
#menu-btn-vuw{appearance:none;-webkit-appearance:none;background:none;border:0;padding:.4em;color:inherit;font:inherit;cursor:pointer;line-height:1}
#close-menu-s5y{appearance:none;-webkit-appearance:none;background:none;border:0;padding:.4em;color:inherit;font:inherit;cursor:pointer;line-height:1}

@media (max-width: 720px) {
  
.nvt-topo-horario,
.nvt-marca,
.nvt-nav,
.nvt-offcanvas,
.nvt-offcanvas nav ul,
.nvt-trust li,
.nvt-transportes li,
.nvt-coluna-faz li, .nvt-coluna-naofaz li,
.nvt-cta-contactos a,
.nvt-contacto-bloco dd a,
.action-dkj,
.badge-xp2,
.site-modal, .popup-fmz,
#back-top-ibc,
.ck-wb8-cat,
.ck-wb8-links,
.submit-ok-97b.is-open,
.submit-ok-97b__mark { flex-wrap: wrap}
  
.nvt-topo-horario > *,
.nvt-marca > *,
.nvt-nav > *,
.nvt-offcanvas > *,
.nvt-offcanvas nav ul > *,
.nvt-trust li > *,
.nvt-transportes li > *,
.nvt-coluna-faz li, .nvt-coluna-naofaz li > *,
.nvt-cta-contactos a > *,
.nvt-contacto-bloco dd a > *,
.action-dkj > *,
.badge-xp2 > *,
.site-modal, .popup-fmz > *,
#back-top-ibc > *,
.ck-wb8-cat > *,
.ck-wb8-links > *,
.submit-ok-97b.is-open > *,
.submit-ok-97b__mark > * { min-width: 0}
}

.ck-wb8-overlay{position:fixed;inset:0;opacity:0;visibility:hidden;transition:.25s;z-index:9998;}
.ck-wb8-overlay.is-open{opacity:1;visibility:visible;}
.ck-wb8-panel{position:fixed;background:var(--site-surface,#fff);color:var(--site-text,#1a1a1a);
  box-shadow:0 20px 60px rgba(0,0,0,.28);padding:24px;opacity:0;visibility:hidden;transition:.25s;z-index:9999;}
.ck-wb8-panel.is-open{opacity:1;visibility:visible;}
.ck-wb8-panel h3{margin:0 0 8px;font-size:1.2rem;}
.ck-wb8-panel>p{margin:0 0 16px;color:var(--site-muted,#666);font-size:.95rem;}
.ck-wb8-cat{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid rgba(128,128,128,.2);}
.ck-wb8-cat h4{margin:0 0 2px;font-size:.98rem;}
.ck-wb8-cat p{margin:0;color:var(--site-muted,#777);font-size:.85rem;}
.ck-wb8-switch{position:relative;flex:0 0 auto;width:44px;height:24px;}
.ck-wb8-switch input{opacity:0;width:0;height:0;position:absolute;}
.ck-wb8-switch span{position:absolute;inset:0;background:#c9c9c9;border-radius:999px;transition:.2s;cursor:pointer;}
.ck-wb8-switch span::before{content:"";position:absolute;width:18px;height:18px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;}
.ck-wb8-switch input:checked+span{background:var(--site-accent,#2b7);}
.ck-wb8-switch input:checked+span::before{transform:translateX(20px);}
.ck-wb8-switch input:disabled+span{opacity:.6;cursor:not-allowed;}
.ck-wb8-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;}
.ck-wb8-actions button{flex:1;min-width:140px;padding:11px 16px;border:none;border-radius:10px;font:inherit;font-weight:600;cursor:pointer;}
.ck-wb8-actions #ck-wb8-all{background:var(--site-accent,#2b7);color:#fff;}
.ck-wb8-actions #ck-wb8-save{background:transparent;color:var(--site-text,#222);border:1px solid rgba(128,128,128,.4);}
.ck-wb8-links{display:flex;gap:16px;margin-top:14px;font-size:.85rem;}
.ck-wb8-links a{color:var(--site-accent,#2b7);text-decoration:underline;}
.ck-wb8-trigger{position:fixed;left:18px;bottom:18px;width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;
  background:var(--site-surface,#fff);color:var(--site-accent,#2b7);box-shadow:0 6px 18px rgba(0,0,0,.2);z-index:9997;font-size:1.1rem;}

.ck-wb8-overlay{background:transparent;pointer-events:none;}
.ck-wb8-panel{left:24px;bottom:24px;width:min(380px,calc(100% - 32px));border-radius:16px;transform:translateY(24px);}
.ck-wb8-panel.is-open{transform:translateY(0);}
@media(max-width:520px){.ck-wb8-panel{left:16px;right:16px;width:auto;}}
@media(max-width:520px){.ck-wb8-actions button{min-width:100%;}}
#side-dock-olk{left:auto !important;right:18px !important;}
@media(max-width:520px){#side-dock-olk{right:12px !important;}}

.submit-ok-97b{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;
  padding:20px;background:rgba(8,10,14,.55);backdrop-filter:blur(2px);}
.submit-ok-97b.is-open{display:flex;}
.submit-ok-97b__box{width:min(420px,100%);background:var(--site-surface,#fff);color:var(--site-text,#15181d);
  border-radius:16px;padding:32px 28px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.28);
  animation:submit-ok-97b-in .22s ease-out;}
@keyframes submit-ok-97b-in{from{opacity:0;transform:translateY(12px) scale(.97);}to{opacity:1;transform:none;}}
.submit-ok-97b__mark{width:56px;height:56px;margin:0 auto 18px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-size:26px;line-height:1;
  background:var(--site-accent,#2e7d5b);color:#fff;}
.submit-ok-97b__title{margin:0 0 10px;font-size:1.35rem;line-height:1.25;}
.submit-ok-97b__text{margin:0 0 24px;line-height:1.6;color:var(--site-muted,#5b6472);}
.submit-ok-97b__close{display:inline-block;cursor:pointer;border:0;border-radius:999px;
  padding:12px 30px;font:inherit;font-weight:600;background:var(--site-accent,#2e7d5b);color:#fff;}
.submit-ok-97b__close:hover{filter:brightness(1.08);}
.submit-ok-97b__close:focus-visible{outline:2px solid var(--site-text,#15181d);outline-offset:3px;}
@media(prefers-reduced-motion:reduce){.submit-ok-97b__box{animation:none;}}

*,*::before,*::after{box-sizing:border-box;}
html,body{overflow-x:hidden;overflow-x:clip;max-width:100%;}
img,svg,video,iframe,canvas{max-width:100%;}
table{max-width:100%;}

.simpleParallax{display:block;width:100%;height:100%;}
.simpleParallax img{width:100%;height:100%;object-fit:cover;}

blockquote, figure { margin-left: 0; margin-right: 0; }

figure > blockquote, figure > figcaption { margin-left: 0; margin-right: 0; }

html.no-aos [data-aos]{opacity:1 !important;transform:none !important;}

@media(prefers-reduced-motion:reduce){
  [data-aos]{opacity:1 !important;transform:none !important;transition:none !important;}
}

.legal-doc{max-width:72ch;margin:0 auto;padding:64px 20px;line-height:1.7;}
.legal-doc h1{margin:0 0 .6em;}
.legal-doc h2{margin:1.8em 0 .5em;}
.legal-doc h3{margin:1.4em 0 .4em;}
.legal-doc p,.legal-doc li{margin:0 0 .8em;}
.legal-doc ul,.legal-doc ol{padding-left:1.4em;margin:0 0 1em;}
.legal-doc table{width:100%;border-collapse:collapse;margin:0 0 1.2em;}
.legal-doc th,.legal-doc td{border:1px solid currentColor;padding:.5em;text-align:left;}

@media (max-width: 720px) {
  body { overflow-x: hidden; }
  h1, h2, h3, p, li, td { overflow-wrap: break-word; }
  
  input, select, textarea { max-width: 100%; min-width: 0; }
  
  img, svg, video, iframe, table { max-width: 100%; }
}

.ck-wb8-panel{position:fixed} 
.ck-wb8-panel .ck-wb8-close,
.ck-wb8-panel .ck-wb8-x,
.ck-wb8-panel > button:not(.ck-wb8-trigger):not([id]),
.ck-wb8-panel button[aria-label*="echar" i],
.ck-wb8-panel button[aria-label*="lose" i],
.ck-wb8-panel button[title*="echar" i]{
  position:absolute;
  top:14px;
  right:14px;
  width:auto;
  flex:none;
  background:none;
  border:0;
  padding:4px 6px;
  margin:0;
  font:inherit;
  font-size:1.4rem;
  line-height:1;
  color:var(--site-muted,#5A6675);
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none}
.ck-wb8-panel .ck-wb8-close:hover,
.ck-wb8-panel .ck-wb8-x:hover,
.ck-wb8-panel button[aria-label*="echar" i]:hover,
.ck-wb8-panel button[aria-label*="lose" i]:hover{
  color:var(--site-accent,#E8862A)}
