/* Princess Apulia Global Editorial Footer v1.1.0 */

body.pa-gef-active footer:not(.pa-global-footer),
body.pa-gef-active #colophon,
body.pa-gef-active #footer,
body.pa-gef-active .site-footer,
body.pa-gef-active .footer-main,
body.pa-gef-active .footer-wrapper,
body.pa-gef-active .footer-area,
body.pa-gef-active .elementor-location-footer,
body.pa-gef-active [data-elementor-type="footer"] {
  display:none !important;
}

body.pa-gef-active .pa-global-footer { display:block !important; }

.pa-global-footer,
.pa-global-footer * { box-sizing:border-box; }

.pa-global-footer {
  --pa-footer-ink:#11110f;
  --pa-footer-paper:#f3f0e9;
  --pa-footer-white:#f7f4ee;
  --pa-footer-muted:#aaa59c;
  --pa-footer-line:#2d2d29;
  width:100%;
  margin:0;
  color:var(--pa-footer-white);
  background:var(--pa-footer-ink);
  font-family:Arial,Helvetica,sans-serif;
}

.pa-global-footer a { color:inherit; text-decoration:none; }

/* CTA */
.pa-global-footer__cta {
  background:var(--pa-footer-paper);
  color:var(--pa-footer-ink);
}

.pa-global-footer__cta-inner {
  width:min(100% - 72px,1280px);
  margin:0 auto;
  padding:86px 0 82px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:80px;
}

.pa-global-footer__eyebrow {
  margin:0 0 16px;
  font-size:9px;
  line-height:1.4;
  font-weight:600;
  letter-spacing:.23em;
  text-transform:uppercase;
  color:#777168;
}

.pa-global-footer__cta h2 {
  margin:0;
  max-width:790px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(44px,5.2vw,74px);
  line-height:.98;
  font-weight:400;
  letter-spacing:-.043em;
  color:var(--pa-footer-ink);
}

.pa-global-footer__cta-text {
  max-width:630px;
  margin:23px 0 0;
  font-size:14.5px;
  line-height:1.74;
  color:#68635b;
}

.pa-global-footer__button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:17px;
  min-width:188px;
  padding:15px 21px;
  border:1px solid var(--pa-footer-ink);
  font-size:9px;
  line-height:1.3;
  font-weight:700;
  letter-spacing:.18em;
  text-transform:uppercase;
  white-space:nowrap;
  transition:background .25s ease,color .25s ease;
}

.pa-global-footer__button:hover,
.pa-global-footer__button:focus-visible {
  background:var(--pa-footer-ink);
  color:var(--pa-footer-white);
}

/* MAIN */
.pa-global-footer__main {
  width:min(100% - 72px,1280px);
  margin:0 auto;
  padding:70px 0 25px;
}

.pa-global-footer__grid {
  display:grid;
  grid-template-columns:minmax(360px,2.25fr) repeat(3,minmax(150px,1fr));
  gap:64px;
  padding-bottom:56px;
  align-items:start;
}

.pa-global-footer__brand {
  max-width:430px;
  padding-right:18px;
}

/* Text wordmark: avoids the old raster logo and keeps the footer editorial */
.pa-global-footer__wordmark {
  display:inline-flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:28px;
}

.pa-global-footer__wordmark-main {
  font-family:Georgia,"Times New Roman",serif;
  font-size:38px;
  line-height:.95;
  font-weight:400;
  letter-spacing:.045em;
  text-transform:uppercase;
  color:#f4f0e8;
}

.pa-global-footer__registered {
  position:relative;
  top:-.55em;
  margin-left:3px;
  font-family:Arial,Helvetica,sans-serif;
  font-size:9px;
  letter-spacing:0;
}

.pa-global-footer__wordmark-sub {
  font-size:8px;
  line-height:1.4;
  font-weight:600;
  letter-spacing:.19em;
  text-transform:uppercase;
  color:#8f8a82;
}

.pa-global-footer__brand-copy {
  max-width:385px;
  margin:0;
  font-size:13.5px;
  line-height:1.72;
  color:var(--pa-footer-muted);
}

.pa-global-footer__social {
  display:flex;
  flex-wrap:wrap;
  gap:18px;
  margin-top:27px;
}

.pa-global-footer__social a,
.pa-global-footer__quiet-link {
  padding-bottom:3px;
  border-bottom:1px solid transparent;
  font-size:8.5px;
  font-weight:650;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:#ddd8d0;
  transition:border-color .2s ease,opacity .2s ease;
}

.pa-global-footer__social a:hover,
.pa-global-footer__quiet-link:hover { border-color:#ddd8d0; }

.pa-global-footer__brands {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:7px 15px;
  margin-top:31px;
  padding-top:20px;
  border-top:1px solid var(--pa-footer-line);
}

.pa-global-footer__brands > span {
  width:100%;
  margin-bottom:2px;
  font-size:8px;
  line-height:1.4;
  font-weight:700;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:#77736c;
}

.pa-global-footer__brands a {
  font-family:Georgia,"Times New Roman",serif;
  font-size:13px;
  line-height:1.45;
  color:#b9b4ac;
  transition:color .2s ease;
}

.pa-global-footer__brands a:hover { color:#fff; }

.pa-global-footer__column { min-width:0; }

.pa-global-footer__heading {
  margin:2px 0 21px;
  font-size:8.5px;
  line-height:1.3;
  font-weight:700;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#f5f2ec;
}

.pa-global-footer__column > a:not(.pa-global-footer__quiet-link) {
  display:block;
  width:max-content;
  max-width:100%;
  margin:0 0 12px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:15.5px;
  line-height:1.42;
  color:#c6c1b8;
  transition:color .2s ease,transform .2s ease;
}

.pa-global-footer__column > a:not(.pa-global-footer__quiet-link):hover {
  color:#fff;
  transform:translateX(2px);
}

.pa-global-footer__contact .pa-global-footer__email {
  font-size:15px !important;
  overflow-wrap:anywhere;
}

.pa-global-footer__contact > p:not(.pa-global-footer__heading) {
  margin:17px 0 19px;
  font-size:12px;
  line-height:1.65;
  color:#8f8a82;
}

.pa-global-footer__external {
  display:inline-block;
  margin-left:3px;
  font-size:11px;
  transform:translateY(-1px);
}

/* LEGAL */
.pa-global-footer__legal {
  min-height:62px;
  padding:21px 0 4px;
  border-top:1px solid var(--pa-footer-line);
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:35px;
  color:#77736c;
  font-size:7.5px;
  line-height:1.6;
  font-weight:600;
  letter-spacing:.13em;
  text-transform:uppercase;
}

.pa-global-footer__legal-left,
.pa-global-footer__legal-links {
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
}

.pa-global-footer__legal-links a {
  color:#858078;
  transition:color .2s ease;
}

.pa-global-footer__legal-links a:hover { color:#d7d2c9; }

@media (max-width:1050px) {
  .pa-global-footer__grid {
    grid-template-columns:1.65fr repeat(2,1fr);
    gap:48px 38px;
  }

  .pa-global-footer__contact {
    grid-column:2 / 4;
  }
}

@media (max-width:767px) {
  .pa-global-footer__cta-inner,
  .pa-global-footer__main {
    width:min(100% - 40px,1280px);
  }

  .pa-global-footer__cta-inner {
    display:block;
    padding:61px 0 58px;
  }

  .pa-global-footer__cta h2 {
    max-width:100%;
    font-size:43px;
    line-height:1.01;
  }

  .pa-global-footer__cta-text {
    margin-top:19px;
    font-size:14px;
    line-height:1.68;
  }

  .pa-global-footer__button {
    margin-top:28px;
    min-width:0;
  }

  .pa-global-footer__main { padding-top:50px; }

  .pa-global-footer__grid {
    grid-template-columns:1fr 1fr;
    gap:40px 26px;
    padding-bottom:44px;
  }

  .pa-global-footer__brand {
    grid-column:1 / -1;
    max-width:100%;
    padding-right:0;
  }

  .pa-global-footer__wordmark-main { font-size:31px; }

  .pa-global-footer__brand-copy {
    max-width:520px;
    font-size:13px;
  }

  .pa-global-footer__contact {
    grid-column:1 / -1;
  }

  .pa-global-footer__column > a:not(.pa-global-footer__quiet-link) {
    font-size:14px;
  }

  .pa-global-footer__legal {
    display:block;
    padding-top:20px;
  }

  .pa-global-footer__legal-links { margin-top:12px; }
}

@media (max-width:430px) {
  .pa-global-footer__grid { grid-template-columns:1fr; }
  .pa-global-footer__column,
  .pa-global-footer__contact { grid-column:1; }
  .pa-global-footer__wordmark-main { font-size:28px; }
}
