@font-face {
  font-family: "NovaSans";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("fKwaxUidviLPAECXmZfEE.woff2") format("woff2");
}

:root {
  --ink: #12221f;
  --muted: #61706b;
  --cream: #f4f1e8;
  --paper: #fffdf8;
  --paper-soft: #eef4ef;
  --forest: #0b2f2c;
  --forest-2: #124b45;
  --forest-3: #1b635a;
  --mint: #98e2c9;
  --lime: #d8ee75;
  --gold: #e7aa62;
  --line: #d8e2dc;
  --shadow-soft: 0 14px 36px rgba(16, 42, 36, .10);
  --shadow-card: 0 20px 50px rgba(19, 48, 41, .13);
  --radius-xl: 24px;
  --radius-lg: 18px;
  --radius-md: 12px;
}

* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  min-height: 100%;
  background: var(--cream);
  color: var(--ink);
  font-family: "NovaSans", "Trebuchet MS", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
body.mpx-u8h2vgris { overflow: hidden; }
[hidden] { display: none !important; }
img { display: block; max-width: 100%; }
a { transition: color .2s ease, background-color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
button, input, textarea { font: inherit; }
button { -webkit-tap-highlight-color: transparent; }

.mpx-x8tmz9d94 {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  isolation: isolate;
  background:
    linear-gradient(180deg, rgba(6, 43, 39, .77) 0, rgba(6, 43, 39, .90) 520px, var(--cream) 720px, var(--cream) 100%),
    url("flwrs/TKIYkUTNBItXlqyrXseq3.webp") center top / 100% 760px no-repeat;
}

.mpx-x8tmz9d94::before {
  content: "";
  position: absolute;
  z-index: -1;
  width: 430px;
  height: 430px;
  top: 95px;
  right: -130px;
  border: 1px solid rgba(216, 238, 117, .28);
  border-radius: 50%;
  box-shadow: 0 0 0 70px rgba(216, 238, 117, .035), 0 0 0 140px rgba(152, 226, 201, .025);
  pointer-events: none;
}

header, main, footer { position: relative; z-index: 2; }
header {
  border-bottom: 1px solid rgba(255,255,255,.13);
  background: rgba(8, 44, 40, .24);
  backdrop-filter: blur(10px);
}

.mpx-jkceqhcwn {
  width: min(1220px, calc(100% - 64px));
  min-height: 76px;
  margin: 0 auto;
  display: flex;
  align-items: center;
}

.mpx-zj7mwsxt6 {
  display: inline-flex;
  align-items: center;
  width: auto;
  min-width: 250px;
  min-height: 42px;
  text-decoration: none;
}

.mpx-00rzfc0er {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #fff;
  font-size: 22px;
  line-height: 1;
  font-weight: 790;
  letter-spacing: -.65px;
  white-space: nowrap;
}

.mpx-00rzfc0er::before {
  content: "MP";
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  margin-right: 4px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%;
  background: var(--lime);
  color: var(--forest);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .06em;
}

.mpx-00rzfc0er span:first-child { color: var(--lime); }
.mpx-00rzfc0er span:last-child { color: #fff; }

/* Home hero */
.mpx-hzcqxsscd {
  width: min(1220px, calc(100% - 64px));
  margin: 0 auto;
  padding: 76px 0 70px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 34px;
}

.mpx-hm2tl892z {
  width: min(880px, 100%);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 20px;
}

.mpx-hm2tl892z h1 {
  max-width: 850px;
  color: #fff;
  text-align: left;
  font-size: clamp(44px, 5.3vw, 70px);
  line-height: 1.01;
  letter-spacing: -3.1px;
  font-weight: 800;
  text-wrap: balance;
}

.mpx-hm2tl892z h1::before {
  content: "GUIA EDITORIAL · PORTUGAL";
  display: block;
  width: fit-content;
  margin-bottom: 18px;
  padding: 8px 11px;
  border: 1px solid rgba(216,238,117,.44);
  border-radius: 999px;
  background: rgba(216,238,117,.10);
  color: var(--lime);
  font-size: 11px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: .12em;
}

.mpx-hm2tl892z h2 {
  max-width: 720px;
  color: rgba(244,255,250,.78);
  text-align: left;
  font-size: 17px;
  line-height: 1.65;
  font-weight: 430;
}

.mpx-xkqd83zlo {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  overflow-x: auto;
  scrollbar-width: none;
}
.mpx-xkqd83zlo::-webkit-scrollbar { display: none; }
.mpx-hw1qzhti2, .mpx-s1ipfl06p { display: none; }
.mpx-xkqd83zlo > div:not(.mpx-hw1qzhti2, .mpx-s1ipfl06p) {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 11px 14px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 10px;
  background: rgba(255,255,255,.075);
}
.mpx-xkqd83zlo img, .mpx-1oie9r8kq { width: 17px; height: 17px; object-fit: contain; }
.mpx-xkqd83zlo span {
  color: rgba(255,255,255,.92);
  font-size: 12px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: .01em;
}

/* Offer list */
.mpx-bhmkortc3 {
  width: min(1220px, calc(100% - 64px));
  margin: 0 auto;
  padding: 20px 0 88px;
}
.mpx-bhmkortc3 .mpx-3j7uejipi { display: flex; flex-direction: column; gap: 14px; }

.mpx-xw8hmkxax {
  position: relative;
  width: 100%;
  min-height: 154px;
  display: grid;
  grid-template-columns: 185px minmax(250px, 1fr) 105px 210px;
  align-items: center;
  gap: 26px;
  padding: 18px 20px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: rgba(255,253,248,.96);
  box-shadow: var(--shadow-soft);
  color: var(--ink);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.mpx-xw8hmkxax:hover {
  transform: translateY(-2px);
  border-color: #b9cbc1;
  box-shadow: var(--shadow-card);
}
.mpx-xw8hmkxax.mpx-pmwim3wqa {
  border: 2px solid var(--forest-3);
  box-shadow: 0 20px 52px rgba(15,74,66,.16);
}
.mpx-xw8hmkxax.mpx-pmwim3wqa::after {
  content: "DESTAQUE";
  position: absolute;
  top: 0;
  right: 0;
  padding: 7px 12px;
  border-radius: 0 16px 0 12px;
  background: var(--lime);
  color: var(--forest);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
}

.mpx-mo9dh373g, .mpx-yql9bel5b { min-width: 0; }
.mpx-mo9dh373g { display: flex; align-items: center; }
.mpx-yql9bel5b { width: 100%; }
.mpx-opfn773d8 {
  width: 100%;
  height: 112px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid rgba(18,34,31,.09);
  background: var(--NmsdiNd, #fff);
  box-shadow: inset 0 0 0 4px rgba(255,255,255,.70);
}
.mpx-opfn773d8 img { width: 100%; height: 100%; object-fit: contain; }

.mpx-6incibt18 { display: flex; flex-direction: column; gap: 6px; }
.mpx-6incibt18 p {
  color: #21312d;
  font-size: 17px;
  line-height: 1.52;
  font-weight: 610;
}
.mpx-6incibt18 span { color: var(--forest-3); font-size: 12px; font-weight: 750; }

.mpx-xulv9m46f {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  min-height: 58px;
  padding: 8px 10px;
  border-radius: 14px;
  background: var(--paper-soft);
}
.mpx-xulv9m46f span {
  color: var(--forest);
  font-size: 30px;
  line-height: 1;
  font-weight: 850;
  letter-spacing: -1px;
}
.mpx-xulv9m46f img { width: 24px; height: 24px; object-fit: contain; }
.mpx-rgb9nxg8a { display: none; }

.mpx-sxpfw7vvw { width: 100%; display: flex; flex-direction: column; align-items: stretch; gap: 8px; }
.mpx-sxpfw7vvw iframe { max-width: 100%; align-self: center; }
.mpx-rx3cexxzi {
  min-height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 18px;
  border: 1px solid var(--forest);
  border-radius: 10px;
  background: var(--forest);
  box-shadow: 0 10px 22px rgba(11,47,44,.15);
  color: #fff;
  text-decoration: none;
}
.mpx-rx3cexxzi span { color: #fff; font-size: 14px; line-height: 1.2; font-weight: 760; }
.mpx-rx3cexxzi:hover {
  transform: translateY(-1px);
  border-color: var(--lime);
  background: var(--lime);
  color: var(--forest);
  box-shadow: 0 12px 24px rgba(11,47,44,.16);
}
.mpx-rx3cexxzi:hover span { color: var(--forest); }
.mpx-lj3h1i5ye {
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: var(--radius-lg);
  background: var(--paper);
  color: var(--muted);
  text-align: center;
  font-size: 14px;
}

/* Information pages */
.mpx-c8x7j2x70 {
  width: min(980px, calc(100% - 64px));
  margin: 0 auto;
  padding: 72px 0 92px;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.mpx-c8x7j2x70 > h1 {
  max-width: 760px;
  color: #fff;
  font-size: clamp(40px, 5vw, 60px);
  line-height: 1.05;
  letter-spacing: -2.2px;
  font-weight: 800;
}
.mpx-c8x7j2x70 > h1::after {
  content: "";
  display: block;
  width: 54px;
  height: 4px;
  margin-top: 18px;
  border-radius: 999px;
  background: var(--lime);
}
.mpx-a476zcjp3 {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 22px;
  background: rgba(255,255,255,.09);
  backdrop-filter: blur(12px);
}
.mpx-ny8exk24f {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 28px 30px;
  border-radius: 14px;
  background: rgba(255,253,248,.98);
  box-shadow: 0 12px 30px rgba(8,45,40,.10);
  color: var(--ink);
}
.mpx-ny8exk24f h4 { color: var(--forest); font-size: 19px; line-height: 1.35; font-weight: 780; }
.mpx-ny8exk24f p, .mpx-ny8exk24f li { color: #52615c; font-size: 15px; line-height: 1.78; font-weight: 440; }
.mpx-ny8exk24f ul, .mpx-ny8exk24f ol { padding-left: 22px; }
.mpx-ny8exk24f a { color: var(--forest-3); font-weight: 700; }
.mpx-ny8exk24f p span { text-decoration-thickness: 1px; }

/* Footer */
footer {
  margin-top: 0;
  padding: 58px 0 30px;
  border-top: 1px solid rgba(255,255,255,.09);
  background: #082723;
}
.mpx-5l6qdfhmx {
  width: min(1220px, calc(100% - 64px));
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 28px;
}
footer .mpx-00rzfc0er span:first-child { color: var(--lime); }
.mpx-w458ophu0 { width: 100%; display: flex; flex-direction: column; gap: 12px; }
.mpx-w458ophu0 h4 { color: #fff; font-size: 17px; font-weight: 760; }
.mpx-w458ophu0 > div { display: flex; flex-direction: column; gap: 10px; }
.mpx-w458ophu0 p, .mpx-w458ophu0 a { color: rgba(231,243,238,.68); font-size: 13px; line-height: 1.72; }
.mpx-urdcbzuub {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 34px;
  flex-wrap: wrap;
  margin: 2px 0;
  padding: 20px 22px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 12px;
  background: rgba(255,255,255,.045);
}
.mpx-cwpdnwifz, .mpx-bfgc1ltv6, .mpx-p8w0mzuek, .mpx-mcx1cv7ze, .mpx-kdamftdw9, .mpx-yqil6y0rf {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: .88;
}
.mpx-egeq1yhou { width: 100%; display: flex; align-items: center; flex-wrap: wrap; gap: 10px 22px; }
.mpx-egeq1yhou a {
  color: #f6fbf8;
  font-size: 12px;
  line-height: 1.4;
  text-decoration: none;
  border-bottom: 1px solid rgba(216,238,117,.28);
}
.mpx-egeq1yhou a:hover { color: var(--lime); border-color: var(--lime); }
.mpx-u73t4x960 { color: rgba(230,242,237,.47); font-size: 11px; line-height: 1.5; }

/* Age gate */
.mpx-miuc1lc5n, .mpx-l4h6n01mo { position: fixed; inset: 0; z-index: 1000; }
.mpx-miuc1lc5n {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 22px;
  overflow-y: auto;
  background: rgba(4,30,27,.92);
  backdrop-filter: blur(15px);
}
.mpx-2zqojlmwe {
  width: min(500px, 100%);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  padding: 34px;
  border: 1px solid #dde7e1;
  border-radius: 18px;
  background: var(--paper);
  box-shadow: 0 34px 90px rgba(0,0,0,.35);
}
.mpx-2zqojlmwe::before {
  content: "18+";
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  margin-bottom: 3px;
  border-radius: 50%;
  background: var(--forest);
  color: var(--lime);
  font-size: 19px;
  font-weight: 900;
}
.mpx-2zqojlmwe h2 { color: var(--ink); text-align: left; font-size: 24px; line-height: 1.25; font-weight: 800; }
.mpx-2zqojlmwe p, .mpx-2zqojlmwe p a { color: #62716c; text-align: left; font-size: 14px; line-height: 1.65; }
.mpx-2zqojlmwe p a { color: var(--forest-3); font-weight: 650; }
.mpx-r7aeo2lug { width: 100%; display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 7px; }
.mpx-r7aeo2lug button { min-height: 48px; border-radius: 10px; cursor: pointer; font-weight: 740; }
.mpx-1bokpahnl { border: 1px solid #d3ddd7; background: #f2f5f1; color: #4c5c56; }
.mpx-qh3qr3k2e { border: 1px solid var(--forest); background: var(--forest); color: #fff; }
.mpx-qh3qr3k2e:hover { background: var(--lime); border-color: var(--lime); color: var(--forest); }
.mpx-l4h6n01mo { display: flex; align-items: center; justify-content: center; padding: 24px; background: #062b27; }
.mpx-di2x02y1l { max-width: 430px; display: flex; flex-direction: column; align-items: center; gap: 12px; color: #fff; text-align: center; }
.mpx-di2x02y1l img { width: 52px; height: 52px; }
.mpx-di2x02y1l h2 { font-size: 24px; font-weight: 800; }
.mpx-di2x02y1l p { color: rgba(255,255,255,.72); font-size: 15px; line-height: 1.6; }

/* Cookie banner */
.mpx-bepecfgjm {
  position: fixed;
  left: 50%;
  bottom: 18px;
  z-index: 900;
  width: min(1040px, calc(100% - 32px));
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 18px;
  padding: 18px 52px 18px 20px;
  border: 1px solid rgba(216,238,117,.18);
  border-radius: 14px;
  background: rgba(8,39,35,.98);
  box-shadow: 0 22px 60px rgba(0,0,0,.28);
}
.mpx-bepecfgjm p, .mpx-bepecfgjm p a { color: rgba(239,248,244,.76); font-size: 12px; line-height: 1.6; }
.mpx-bepecfgjm p a { color: var(--lime); font-weight: 700; }
.mpx-9ktth0ghu {
  position: absolute;
  top: 11px;
  right: 11px;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 50%;
  background: rgba(255,255,255,.07);
  color: #fff;
  cursor: pointer;
}
.mpx-9ktth0ghu span { display: block; margin-top: -2px; font-size: 21px; line-height: 1; }
.mpx-tm31roo43 { display: flex; align-items: center; gap: 8px; }
.mpx-3yk2a3bkp, .mpx-m5l9vxnrl {
  min-width: 126px;
  min-height: 40px;
  padding: 8px 14px;
  border-radius: 9px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 760;
}
.mpx-3yk2a3bkp { border: 1px solid rgba(255,255,255,.22); background: transparent; color: #e6f0ec; }
.mpx-m5l9vxnrl { border: 1px solid var(--lime); background: var(--lime); color: var(--forest); }

/* Compatibility helpers */
.mpx-9wb748e3f { height: 100vh; overflow-y: auto; }
.mpx-hdgvpdzjo, .mpx-hs7w7l7pk, .mpx-owkhdlxkp { min-height: 100dvh; background: var(--forest); }
.mpx-hdgvpdzjo.mpx-state-open { display: flex; }
.mpx-f3p0hte4g, .mpx-uf2ewbtz4 { width: min(420px, calc(100% - 32px)); margin: auto; text-align: center; }
.mpx-v9assrxgz { display: inline-flex; padding: 5px 12px; border-radius: 999px; background: #e9f3ed; color: var(--forest); }
.mpx-fk6rokobb { display: block; }
.mpx-q1y6fnp10 { display: flex; }

@media (max-width: 1020px) {
  .mpx-xw8hmkxax { grid-template-columns: 175px 1fr 205px; gap: 20px; }
  .mpx-xw8hmkxax > .mpx-xulv9m46f:not(.mpx-rgb9nxg8a) { display: none; }
  .mpx-rgb9nxg8a { display: flex; margin-left: auto; min-width: 88px; }
  .mpx-mo9dh373g { gap: 10px; }
}

@media (max-width: 760px) {
  .mpx-jkceqhcwn, .mpx-hzcqxsscd, .mpx-bhmkortc3, .mpx-c8x7j2x70, .mpx-5l6qdfhmx {
    width: min(100% - 28px, 100%);
  }
  .mpx-x8tmz9d94 {
    background:
      linear-gradient(180deg, rgba(6,43,39,.79) 0, rgba(6,43,39,.93) 480px, var(--cream) 650px, var(--cream) 100%),
      url("flwrs/TKIYkUTNBItXlqyrXseq3.webp") center top / auto 680px no-repeat;
  }
  .mpx-x8tmz9d94::before { width: 300px; height: 300px; top: 130px; right: -180px; }
  .mpx-jkceqhcwn { min-height: 68px; }
  .mpx-zj7mwsxt6 { min-width: 0; min-height: 36px; }
  .mpx-00rzfc0er { font-size: 18px; gap: 5px; }
  .mpx-00rzfc0er::before { width: 32px; height: 32px; margin-right: 3px; font-size: 9px; }

  .mpx-hzcqxsscd { padding: 54px 0 54px; gap: 26px; }
  .mpx-hm2tl892z { gap: 16px; }
  .mpx-hm2tl892z h1 { font-size: 40px; letter-spacing: -1.8px; }
  .mpx-hm2tl892z h1::before { margin-bottom: 15px; font-size: 9px; }
  .mpx-hm2tl892z h2 { font-size: 15px; line-height: 1.58; }
  .mpx-xkqd83zlo { padding-bottom: 4px; }

  .mpx-bhmkortc3 { padding: 8px 0 58px; }
  .mpx-xw8hmkxax { grid-template-columns: 1fr; gap: 14px; padding: 15px; border-radius: 14px; }
  .mpx-xw8hmkxax.mpx-pmwim3wqa::after { font-size: 8px; padding: 6px 9px; }
  .mpx-mo9dh373g { width: 100%; }
  .mpx-opfn773d8 { height: 102px; }
  .mpx-6incibt18 p { font-size: 16px; text-align: left; }
  .mpx-sxpfw7vvw { max-width: none; }
  .mpx-rx3cexxzi { min-height: 48px; }

  .mpx-c8x7j2x70 { padding: 50px 0 68px; gap: 18px; }
  .mpx-c8x7j2x70 > h1 { font-size: 38px; letter-spacing: -1.5px; }
  .mpx-a476zcjp3 { padding: 8px; border-radius: 16px; }
  .mpx-ny8exk24f { padding: 22px 20px; border-radius: 10px; }

  footer { padding-top: 42px; }
  .mpx-urdcbzuub { gap: 23px; padding: 18px; }

  .mpx-bepecfgjm { grid-template-columns: 1fr; gap: 12px; padding: 17px 42px 15px 16px; }
  .mpx-tm31roo43 { width: 100%; }
  .mpx-3yk2a3bkp, .mpx-m5l9vxnrl { flex: 1; min-width: 0; }
}

@media (max-width: 480px) {
  .mpx-hm2tl892z h1 { font-size: 34px; }
  .mpx-xkqd83zlo > div:not(.mpx-hw1qzhti2, .mpx-s1ipfl06p) { padding: 9px 10px; }
  .mpx-xkqd83zlo span { font-size: 11px; }
  .mpx-opfn773d8 { height: 94px; }
  .mpx-xulv9m46f { min-height: 50px; }
  .mpx-xulv9m46f span { font-size: 27px; }
  .mpx-xulv9m46f img { width: 22px; height: 22px; }
  .mpx-r7aeo2lug { grid-template-columns: 1fr; }
  .mpx-2zqojlmwe { padding: 26px 20px; border-radius: 14px; }
  .mpx-2zqojlmwe h2 { font-size: 21px; }
  .mpx-egeq1yhou { gap: 12px 16px; }
  .mpx-u73t4x960 { font-size: 10px; }
}
