/* Native destination design previews (Detail + Grid/List) */

@import url('https://fonts.googleapis.com/css2?family=Commissioner:wght@300;400;500;600&family=Outfit:wght@800&family=Open+Sans:wght@300&family=Lato:wght@300;400;700&family=Lexend:wght@300;400;500;600&display=swap');

.dp-page {
  width: 1440px;
  background: #fff;
  color: #1a1a1a;
  font-family: 'Lexend', system-ui, sans-serif;
  text-align: left;
  line-height: 1.45;
  overflow: hidden;
}
.dp-page * { box-sizing: border-box; }
.dp-page img { display: block; max-width: 100%; }
.dp-page button { font: inherit; cursor: default; }

/* ── Detail page (London / GO7AIR) — Figma 44:1195 ── */
.dp-detail {
  width: 1670px;
  background: #f4f4f4;
  font-family: 'Commissioner', 'Lexend', system-ui, sans-serif;
  color: #282828;
}
.dp-detail .dp-admin {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 9px 20px;
  min-height: 56px;
  background: #fff;
  border-bottom: 1px solid #ededed;
  font-family: Inter, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.5px;
  color: #000;
  overflow: hidden;
}
.dp-detail .dp-admin span {
  padding: 11px 10px;
  border-radius: 5px;
  white-space: nowrap;
}
.dp-detail .dp-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 115px;
  background: #fff;
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.16);
  position: relative;
  z-index: 2;
}
.dp-detail .dp-nav-left {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  flex: 1;
}
.dp-detail .dp-logo {
  width: 150px;
  height: 29px;
  max-height: 32px;
  object-fit: contain;
  object-position: left center;
}
.dp-detail .dp-nav-links {
  display: flex;
  align-items: center;
  gap: 40px;
  padding: 0 48px;
  font-size: 16px;
  font-weight: 400;
  color: #282828;
  line-height: 24px;
}
.dp-detail .dp-nav-right {
  display: flex;
  align-items: center;
  gap: 4px;
  flex-shrink: 0;
}
.dp-detail .dp-lang {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  border: none;
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 16px;
  color: #282828;
  line-height: 24px;
}
.dp-detail .dp-lang img {
  width: 24px;
  height: 24px;
}
.dp-detail .dp-login {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background: #dbfb37;
  color: #282828;
  border: none;
  border-radius: 8px;
  padding: 12px 16px;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  min-height: 49px;
}
.dp-detail .dp-login img {
  width: 24px;
  height: 24px;
}
.dp-detail .dp-hero {
  position: relative;
  height: 304px;
  background: #1a2a30 center/cover no-repeat;
}
.dp-detail .dp-hero-dim {
  position: absolute;
  inset: 0;
  background: #000;
  opacity: 0.15;
}
.dp-detail .dp-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 1440px;
  margin: 0 auto;
  padding: 92px 131px 0 131px;
}
.dp-detail .dp-hero-kicker {
  font-family: 'Commissioner', sans-serif;
  font-weight: 300;
  font-size: 18px;
  line-height: 28px;
  color: #d4f000;
  margin-bottom: 0;
  padding: 12px 0 20px;
}
.dp-detail .dp-hero-title {
  font-family: 'Outfit', sans-serif;
  font-weight: 800;
  font-size: 75px;
  line-height: 80px;
  letter-spacing: 0;
  color: #fff;
  margin: 0;
  padding: 12px 0 40px;
}
.dp-detail .dp-meta {
  background: #00363e;
  min-height: 84px;
  display: flex;
  align-items: center;
}
.dp-detail .dp-meta-inner {
  width: 1440px;
  max-width: 100%;
  margin: 0 auto;
  padding: 8px 16px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.dp-detail .dp-meta-item {
  padding: 0 8px 0 0;
  border-right: 1px solid #fff;
  min-height: 56px;
}
.dp-detail .dp-meta-item:nth-child(2) { padding-left: 8px; }
.dp-detail .dp-meta-item:nth-child(3),
.dp-detail .dp-meta-item:nth-child(4) { padding-left: 12px; }
.dp-detail .dp-meta-item:last-child { border-right: none; }
.dp-detail .dp-meta-label {
  font-size: 18px;
  font-weight: 300;
  line-height: 28px;
  color: #b3b3b3;
}
.dp-detail .dp-meta-item:nth-child(3) .dp-meta-label,
.dp-detail .dp-meta-item:nth-child(4) .dp-meta-label {
  color: #ccc;
}
.dp-detail .dp-meta-value {
  font-size: 18px;
  font-weight: 300;
  line-height: 28px;
  color: #fff;
}
.dp-detail .dp-content {
  width: 1440px;
  max-width: 100%;
  margin: 0 auto;
  padding: 44px 16px 48px;
}
.dp-detail .dp-intro {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  margin-bottom: 12px;
}
.dp-detail .dp-intro-copy {
  flex: 1 1 684px;
  min-width: 0;
}
.dp-detail .dp-h1 {
  font-family: 'Commissioner', sans-serif;
  font-size: 40px;
  font-weight: 600;
  line-height: 52px;
  color: #000;
  margin: 0 0 12px;
}
.dp-detail .dp-h2 {
  font-family: 'Commissioner', sans-serif;
  font-size: 36px;
  font-weight: 600;
  line-height: 44px;
  color: #282828;
  margin: 0;
  padding: 60px 0 12px;
}
.dp-detail .dp-copy {
  font-size: 18px;
  font-weight: 300;
  line-height: 28px;
  color: #282828;
  margin: 0;
  padding: 12px 0;
}
.dp-detail .dp-copy-alt {
  font-family: 'Open Sans', 'Commissioner', sans-serif;
  color: #000;
}
.dp-detail .dp-stats {
  display: flex;
  gap: 20px;
  margin-top: 12px;
  align-items: stretch;
}
.dp-detail .dp-stat {
  background: #ede9e2;
  border-radius: 16px;
  padding: 24px 12px;
  text-align: center;
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 120px;
}
.dp-detail .dp-stat-num {
  font-size: 36px;
  font-weight: 600;
  line-height: 44px;
  color: #282828;
}
.dp-detail .dp-stat-label {
  font-size: 18px;
  font-weight: 500;
  line-height: 28px;
  color: #282828;
}
.dp-detail .dp-collage {
  flex: 0 0 684px;
  width: 684px;
  display: flex;
  gap: 10px;
  align-items: stretch;
  height: 634px;
}
.dp-detail .dp-collage-tall {
  width: 337px;
  flex: 0 0 337px;
  height: 634px;
  object-fit: cover;
  border-radius: 16px;
}
.dp-detail .dp-collage-stack {
  flex: 0 0 337px;
  width: 337px;
  display: flex;
  flex-direction: column;
  gap: 13px;
}
.dp-detail .dp-collage-stack img {
  width: 337px;
  height: 309px;
  object-fit: cover;
  border-radius: 16px;
}
.dp-detail .dp-visit-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.dp-detail .dp-visit-card {
  border: 1px solid #dfdfdf;
  border-radius: 16px;
  padding: 12px;
  background: #fff;
  min-height: 161px;
}
.dp-detail .dp-visit-label {
  font-size: 18px;
  font-weight: 300;
  line-height: 28px;
  color: #282828;
}
.dp-detail .dp-visit-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 32px;
  color: #282828;
  padding: 12px 0;
}
.dp-detail .dp-visit-card:nth-child(2) .dp-visit-title,
.dp-detail .dp-visit-card:nth-child(3) .dp-visit-title {
  font-weight: 400;
}
.dp-detail .dp-visit-text {
  font-size: 18px;
  font-weight: 300;
  line-height: 28px;
  color: #282828;
  margin: 0;
  padding: 12px 0 0;
}
.dp-detail .dp-explore {
  border-radius: 8px;
}
.dp-detail .dp-tabs {
  display: flex;
  border-bottom: 1px solid #e9e9e9;
  margin: 0 0 8px;
}
.dp-detail .dp-tab {
  min-width: 282px;
  padding: 24px;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  color: #787878;
  text-align: center;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
}
.dp-detail .dp-tab.on {
  color: #586416;
  border-bottom-color: #586416;
  border-bottom-width: 2px;
}
.dp-detail .dp-dest-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 16px 8px 8px;
}
.dp-detail .dp-dest-card {
  background: #fff;
  border: 1px solid #dbdbdb;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  min-height: 436px;
}
.dp-detail .dp-dest-media {
  height: 187px;
  overflow: hidden;
}
.dp-detail .dp-dest-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.dp-detail .dp-dest-body {
  padding: 20px;
}
.dp-detail .dp-dest-card h4 {
  margin: 0;
  font-size: 28px;
  font-weight: 600;
  line-height: 36px;
  color: #00363e;
}
.dp-detail .dp-dest-card p {
  margin: 0;
  padding: 16px 0;
  font-size: 18px;
  font-weight: 300;
  line-height: 28px;
  color: #282828;
}
.dp-detail .dp-dest-card a {
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  color: #002b32;
  text-decoration: none;
}
.dp-detail .dp-tips {
  background: #00363e;
  padding: 28px 0 40px;
}
.dp-detail .dp-tips-inner {
  width: 1440px;
  max-width: 100%;
  margin: 0 auto;
  padding: 0 16px;
}
.dp-detail .dp-tips h2 {
  margin: 0;
  font-size: 40px;
  font-weight: 600;
  line-height: 52px;
  color: #e1dada;
}
.dp-detail .dp-tips-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding-top: 20px;
}
.dp-detail .dp-tip {
  background: #0c4e55;
  border-radius: 12px;
  padding: 12px 12px 12px 12px;
  min-height: 199px;
}
.dp-detail .dp-tip-icon {
  width: 36px;
  height: 36px;
  object-fit: contain;
  margin-bottom: 0;
}
.dp-detail .dp-tip h4 {
  margin: 0;
  padding: 12px 0 0;
  font-size: 20px;
  font-weight: 400;
  line-height: 28px;
  color: #fff;
}
.dp-detail .dp-tip p {
  margin: 0;
  padding: 12px 0;
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  color: #fff;
}
.dp-detail .dp-footer {
  background: #f4f4f4;
  padding: 0 0 32px;
}
.dp-detail .dp-footer-inner {
  width: 1440px;
  max-width: 100%;
  margin: 0 auto;
  padding: 0 10px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 52px;
}
.dp-detail .dp-footer-links {
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
  color: #000;
}
.dp-detail .dp-footer-copy {
  font-family: 'Lexend', sans-serif;
  font-size: 14px;
  font-weight: 300;
  line-height: 20px;
  color: #000;
  text-align: right;
}

/* ── Grid / List style page (Amsterdam / Bluebird) — Figma 47:2884 ── */
.dp-grid {
  width: 1497px;
  background: #f3f4f8;
  font-family: 'Lato', 'Lexend', system-ui, sans-serif;
  color: #000;
}
.dp-grid .dp-topbar {
  background: #1c499c;
  min-height: 37px;
  padding: 8px 0;
}
.dp-grid .dp-topbar-inner {
  max-width: 1300px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  padding: 0 10px;
}
.dp-grid .dp-topbar-item {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #fff;
  font-size: 16px;
  line-height: 20px;
  padding: 0 8px;
}
.dp-grid .dp-topbar-item img {
  width: 20px;
  height: 20px;
  object-fit: contain;
}
.dp-grid .dp-nav {
  background: #fff;
  padding: 20px 0;
}
.dp-grid .dp-nav-inner {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.dp-grid .dp-logo {
  width: 150px;
  height: 29px;
  object-fit: contain;
  object-position: left center;
}
.dp-grid .dp-nav-links {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 45px;
  font-size: 20px;
  line-height: 20px;
  color: #000;
  flex-wrap: wrap;
}
.dp-grid .dp-nav-links span {
  display: inline-flex;
  align-items: flex-end;
  gap: 10px;
  white-space: nowrap;
}
.dp-grid .dp-chev {
  width: 20px;
  height: 20px;
  object-fit: contain;
}
.dp-grid .dp-hero {
  position: relative;
  height: 600px;
  background: #123 center/cover no-repeat;
}
.dp-grid .dp-search {
  position: absolute;
  left: 50%;
  bottom: 48px;
  transform: translateX(-50%);
  width: min(1280px, 92%);
  background: rgba(255, 255, 255, 0.92);
  border-radius: 12px;
  padding: 20px 24px 24px;
  box-shadow: 0 8px 32px rgba(6, 23, 55, 0.12);
}
.dp-grid .dp-search-tabs {
  display: flex;
  gap: 24px;
  margin-bottom: 16px;
  font-size: 16px;
  font-weight: 300;
  color: #505050;
}
.dp-grid .dp-search-tabs .on {
  color: #002b32;
  font-weight: 400;
  border-bottom: 2px solid #002b32;
  padding-bottom: 4px;
}
.dp-grid .dp-search-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.dp-grid .dp-field {
  flex: 1 1 140px;
  min-width: 120px;
}
.dp-grid .dp-field .val {
  border: 1px solid #dedede;
  border-radius: 8px;
  padding: 14px 12px;
  font-size: 15px;
  background: #fff;
  color: #787878;
  min-height: 48px;
}
.dp-grid .dp-swap {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.dp-grid .dp-swap img {
  width: 24px;
  height: 24px;
}
.dp-grid .dp-promo {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #282828;
  white-space: nowrap;
  margin-left: 4px;
}
.dp-grid .dp-check {
  width: 20px;
  height: 20px;
  border: 1px solid #c8c8c8;
  border-radius: 4px;
  background: #fff;
  display: inline-block;
  flex-shrink: 0;
}
.dp-grid .dp-search-btn {
  background: #1c499c;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 0 24px;
  font-size: 16px;
  font-weight: 400;
  white-space: nowrap;
  min-height: 56px;
  min-width: 160px;
}
.dp-grid .dp-lead-wrap {
  background: #f3f4f8;
  padding: 60px 0 40px;
}
.dp-grid .dp-lead {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 10px;
  text-align: center;
}
.dp-grid .dp-lead h1 {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 24px;
  color: #000;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.dp-grid .dp-lead p {
  margin: 0 auto;
  font-size: 18px;
  line-height: 27px;
  color: #000;
  max-width: 1200px;
  text-align: left;
}
.dp-grid .dp-journey {
  max-width: 1300px;
  margin: 0 auto;
  padding: 20px 10px 40px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
}
.dp-grid .dp-journey > h2 {
  font-size: 40px;
  font-weight: 500;
  line-height: 44px;
  text-align: center;
  margin: 0;
  color: #000;
}
.dp-grid .dp-journey-intro {
  font-size: 18px;
  line-height: 27px;
  text-align: center;
  margin: 0;
  max-width: 1300px;
}
.dp-grid .dp-panel {
  background: #fff;
  border: 1px solid #dbe6ff;
  border-radius: 10px;
  box-shadow: 0 0 16px rgba(6, 23, 55, 0.09);
  width: 1280px;
  max-width: 100%;
  display: flex;
  gap: 40px;
  align-items: center;
  padding: 41px 31px;
}
.dp-grid .dp-panel-title {
  flex: 0 0 200px;
  font-size: 26px;
  line-height: 1.2;
  color: #000;
}
.dp-grid .dp-panel-body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 30px;
  min-width: 0;
}
.dp-grid .dp-row {
  display: flex;
  gap: 12px;
  align-items: center;
  font-size: 20px;
  color: #000;
}
.dp-grid .dp-row img {
  width: 28px;
  height: 28px;
  object-fit: contain;
  flex-shrink: 0;
}
.dp-grid .dp-row span {
  padding: 0 20px;
}
.dp-grid .dp-around {
  flex: 1;
  display: flex;
  gap: 10px;
  min-width: 0;
}
.dp-grid .dp-around-item {
  flex: 1;
  display: flex;
  gap: 15px;
  align-items: flex-start;
  min-width: 0;
}
.dp-grid .dp-around-item > img {
  width: 60px;
  height: 60px;
  object-fit: contain;
  flex-shrink: 0;
}
.dp-grid .dp-around-item h4 {
  margin: 0 0 10px;
  font-size: 18.4px;
  font-weight: 700;
  line-height: 26px;
}
.dp-grid .dp-around-item p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #000;
}
.dp-grid .dp-section-white {
  background: #fff;
  padding: 40px 0 60px;
}
.dp-grid .dp-seasons-sec {
  padding-top: 60px;
  padding-bottom: 60px;
}
.dp-grid .dp-inner {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 10px;
}
.dp-grid .dp-section-white h2,
.dp-grid .dp-facts-sec h2,
.dp-grid .dp-seasons-sec h2 {
  font-size: 40px;
  font-weight: 500;
  line-height: 44px;
  text-align: center;
  margin: 0 0 33px;
  color: #000;
}
.dp-grid .dp-attr-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px 20px;
}
.dp-grid .dp-attr-card {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 0 32px rgba(6, 23, 55, 0.09);
  display: flex;
  flex-direction: column;
}
.dp-grid .dp-attr-media {
  position: relative;
  height: 240px;
  overflow: hidden;
}
.dp-grid .dp-attr-media > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.dp-grid .dp-attr-badge {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 41px;
  background: #fff;
  border-bottom-left-radius: 10px;
  box-shadow: 0 0 16px rgba(6, 23, 55, 0.09);
  display: flex;
  align-items: center;
  justify-content: center;
}
.dp-grid .dp-attr-badge img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.dp-grid .dp-attr-body {
  padding: 25px;
}
.dp-grid .dp-attr-body h4 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 30px;
  color: #000;
}
.dp-grid .dp-attr-body p {
  margin: 15px 0 0;
  font-size: 16px;
  line-height: 24px;
  color: #000;
}
.dp-grid .dp-seasons {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 10px;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.dp-grid .dp-season {
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 0 32px rgba(6, 23, 55, 0.09);
  padding: 25px;
  text-align: center;
}
.dp-grid .dp-season-ico {
  width: 50px;
  height: 50px;
  margin: 0 auto 8px;
  object-fit: contain;
}
.dp-grid .dp-season h4 {
  margin: 0;
  font-size: 20px;
  font-weight: 700;
  line-height: 30px;
  color: #1c499c;
}
.dp-grid .dp-season .temp {
  font-size: 16px;
  line-height: 23px;
  color: #1c499c;
  padding: 15px 0 8px;
}
.dp-grid .dp-season p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #000;
}
.dp-grid .dp-facts-sec {
  max-width: 1300px;
  margin: 0 auto;
  padding: 20px 10px 40px;
}
.dp-grid .dp-facts-list {
  list-style: none;
  margin: 0 0 32px;
  padding: 16px 0 16px 20px;
}
.dp-grid .dp-facts-list li {
  position: relative;
  font-size: 18px;
  line-height: 27px;
  color: #000;
  margin: 0 0 20px;
  padding-left: 8px;
}
.dp-grid .dp-facts-list li::before {
  content: '•';
  position: absolute;
  left: -18px;
  top: 0;
}
.dp-grid .dp-practical {
  background: #fff;
  border: 1px solid #dbe6ff;
  border-radius: 10px;
  box-shadow: 0 0 16px rgba(6, 23, 55, 0.09);
  padding: 41px 31px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.dp-grid .dp-practical-row {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  border-left: 1px solid #8ea6e0;
  padding: 0 20px 0 21px;
}
.dp-grid .dp-practical-row > img {
  width: 28px;
  height: 28px;
  object-fit: contain;
  flex-shrink: 0;
  margin-top: 2px;
  display: block;
}
.dp-grid .dp-practical-row strong {
  display: block;
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  margin-bottom: 0;
}
.dp-grid .dp-practical-val {
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
}
.dp-grid .dp-practical-val a {
  color: blue;
  text-decoration: underline;
}
.dp-grid .dp-more-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 32px;
}
.dp-grid .dp-more-card {
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 0 32px rgba(6, 23, 55, 0.09);
  position: relative;
}
.dp-grid .dp-more-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}
.dp-grid .dp-more-card .body {
  padding: 20px 20px 28px;
  position: relative;
}
.dp-grid .dp-more-card h4 {
  margin: 0 0 8px;
  font-size: 20px;
  font-weight: 700;
  color: #000;
}
.dp-grid .dp-more-card p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #505050;
  padding-right: 28px;
}
.dp-grid .dp-more-arrow {
  position: absolute;
  right: 20px;
  bottom: 20px;
  color: #1c499c;
  font-size: 20px;
}
.dp-grid .dp-disclaimer {
  font-size: 14px;
  line-height: 21px;
  color: #777;
  text-align: center;
  margin: 0;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
.dp-grid .dp-footer {
  background: #1c499c;
  color: #fff;
  padding: 0;
}
.dp-grid .dp-footer-main {
  max-width: 1300px;
  margin: 0 auto;
  padding: 48px 20px 32px;
  display: flex;
  gap: 40px;
  align-items: flex-start;
}
.dp-grid .dp-footer-brand {
  flex: 0 0 360px;
}
.dp-grid .dp-footer-logo {
  width: 150px;
  height: auto;
  margin-bottom: 20px;
  filter: brightness(0) invert(1);
}
.dp-grid .dp-newsletter {
  background: #8ea6e0;
  border-radius: 10px;
  padding: 20px;
  color: #000;
  box-shadow: 0 0 16px rgba(6, 23, 55, 0.09);
  margin-bottom: 20px;
}
.dp-grid .dp-newsletter h3 {
  margin: 0 0 8px;
  font-size: 22px;
  font-weight: 700;
}
.dp-grid .dp-newsletter > p {
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 21px;
}
.dp-grid .dp-news-fields {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 12px;
}
.dp-grid .dp-news-field {
  background: #fff;
  border-radius: 6px;
  padding: 10px 12px;
  font-size: 14px;
  color: #787878;
}
.dp-grid .dp-news-check {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  margin-bottom: 12px;
}
.dp-grid .dp-news-check a {
  color: #1c499c;
  text-decoration: underline;
}
.dp-grid .dp-subscribe {
  background: #1c499c;
  color: #fff;
  border: none;
  border-radius: 30px;
  height: 48px;
  width: 100%;
  max-width: 280px;
  font-size: 16px;
}
.dp-grid .dp-social-label {
  font-size: 14px;
  margin-bottom: 10px;
}
.dp-grid .dp-social {
  display: flex;
  gap: 12px;
}
.dp-grid .dp-social img {
  width: 32px;
  height: 32px;
  object-fit: contain;
  border-radius: 50%;
  background: #fff;
}
.dp-grid .dp-footer-cols {
  flex: 1;
  display: grid;
  grid-template-columns: 1fr 1.2fr 0.8fr;
  gap: 24px;
}
.dp-grid .dp-footer-cols h5 {
  margin: 0 0 14px;
  font-size: 16px;
  font-weight: 700;
}
.dp-grid .dp-footer-cols a {
  display: block;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.9);
  text-decoration: none;
  margin-bottom: 4px;
}
.dp-grid .dp-footer-legal {
  background: rgba(0, 0, 0, 0.08);
  display: flex;
  justify-content: center;
  gap: 28px;
  padding: 14px;
}
.dp-grid .dp-footer-legal a {
  color: #fff;
  font-size: 14px;
  text-decoration: none;
}
.dp-grid .dp-footer-bottom {
  background: #8ea6e0;
  color: #000;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 20px;
  font-size: 14px;
  font-weight: 300;
  min-height: 58px;
}
.dp-grid .dp-footer-bottom img {
  height: 16px;
  width: auto;
}
