
/* =========================================================
   DESTINATION / TRAVEL EXTRA PAGES
   ========================================================= */
.page-banner{
  min-height:360px;
  position:relative;
  display:flex;
  align-items:center;
  overflow:hidden;
  color:#fff;
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
}
.page-banner::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(6,36,52,.66),rgba(6,36,52,.30) 48%,rgba(6,36,52,.06));
}
.page-banner-inner{position:relative;z-index:1;padding:56px 0}
.page-banner-eyebrow{
  margin:0 0 10px;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#c9f0ff;
}
.page-banner h1{
  margin:0;
  max-width:850px;
  font-family:"Barlow Condensed",Arial,sans-serif;
  font-size:clamp(3.8rem,7vw,6.7rem);
  font-weight:800;
  line-height:.85;
  text-transform:uppercase;
}
.page-title-line,.page-title-accent{display:block}
.page-title-accent{color:#44bdf7;margin-top:4px}
.page-banner-rule{display:block;width:76px;height:3px;margin:20px 0;background:#44bdf7}
.page-banner-text{max-width:720px;margin:0;font-size:1rem;line-height:1.65;color:rgba(255,255,255,.95)}
.extra-page{padding:82px 0}
.extra-head{display:grid;grid-template-columns:1.2fr .8fr;gap:56px;align-items:end;margin-bottom:36px}
.extra-head h2{
  margin:0;
  font-family:"Barlow Condensed",Arial,sans-serif;
  font-size:clamp(3rem,5vw,5rem);
  line-height:.9;
  text-transform:uppercase;
  color:var(--navy);
}
.extra-head>p{margin:0;color:var(--muted);line-height:1.7}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}
.feature-card{
  min-height:220px;
  padding:28px;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 12px 28px rgba(23,63,87,.06);
}
.feature-card span{
  display:block;
  margin-bottom:14px;
  color:var(--ocean);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.feature-card h3{
  font-size:2rem;
  color:var(--navy);
}
.feature-card p{color:var(--muted);font-size:.92rem}
.split-panel{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px;
  margin-top:28px;
}
.info-panel,.highlight-panel{
  padding:34px;
  border-radius:24px;
  box-shadow:var(--shadow);
}
.info-panel{background:#fff;border:1px solid var(--line)}
.highlight-panel{background:linear-gradient(135deg,var(--navy),#0b6688);color:#fff}
.info-panel h3,.highlight-panel h3{font-size:2.6rem}
.info-panel p,.info-panel li{color:var(--muted)}
.highlight-panel p,.highlight-panel li{color:rgba(255,255,255,.84)}
.info-list{display:grid;gap:12px;margin:18px 0 0;padding-left:18px}
.link-band{
  margin-top:30px;
  padding:34px;
  border-radius:24px;
  background:linear-gradient(135deg,#eefaff,#fff);
  box-shadow:var(--shadow);
}
.link-band h3{font-size:2.7rem;color:var(--navy)}
.link-band p{max-width:760px;color:var(--muted)}
.link-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
@media(max-width:900px){
  .extra-head,.split-panel{grid-template-columns:1fr}
  .feature-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .page-banner{min-height:320px}
  .feature-grid{grid-template-columns:1fr}
  .extra-page{padding:64px 0}
}

.page-banner-lisbon{background-image:url("https://www.cascais-lisboa.com/assets/images/banners/lisbon.jpg")}
