/* Homepage IPS v2 */

.ips-home-v2{--ips-ink:#1d2a2b;--ips-accent:#a56f3a;--ips-soft:#f5f0e8;--ips-soft-green:#e9efea;--ips-white:#fff;--ips-radius:28px;color:var(--ips-ink)}
body:has(.ips-home-v2) .wp-block-post-title{display:none}
.ips-home-v2 .ips-home-v2__hero,.ips-home-v2 .ips-home-v2__section{padding:clamp(64px,8vw,112px) clamp(20px,4vw,48px)}
.ips-home-v2 .ips-home-v2__hero{padding-top:10px}
.ips-home-v2 .ips-home-v2__hero-grid,.ips-home-v2 .ips-home-v2__split,.ips-home-v2 .ips-home-v2__about{gap:clamp(36px,6vw,84px)}
.ips-home-v2 .ips-home-v2__eyebrow{margin:0 0 14px;color:var(--ips-accent);font-size:.82rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ips-home-v2 .ips-home-v2__eyebrow--light{color:#ead8c4}
.ips-home-v2 .ips-home-v2__title{max-width:760px;margin:0;font-size:clamp(3.2rem,6.2vw,6.4rem);line-height:.96;letter-spacing:-.055em}
.ips-home-v2 .ips-home-v2__lead{max-width:680px;margin-top:24px;font-size:clamp(1.08rem,1.5vw,1.35rem);line-height:1.6}
.ips-home-v2 .ips-home-v2__button .wp-block-button__link{border-radius:999px;padding:14px 24px;font-weight:700}
.ips-home-v2 .ips-home-v2__button:not(.is-style-outline) .wp-block-button__link{background:var(--ips-accent);color:var(--ips-white)}
.ips-home-v2 .ips-home-v2__button--secondary .wp-block-button__link{border-color:var(--ips-ink);color:var(--ips-ink)}
.ips-home-v2 .ips-home-v2__button--light .wp-block-button__link{background:var(--ips-white);color:var(--ips-ink)}
.ips-home-v2 .ips-home-v2__photo-placeholder{min-height:520px;display:grid;place-items:center;border-radius:var(--ips-radius);background:linear-gradient(135deg,#e9dfd1,#dfe8df);color:rgba(29,42,43,.68);text-align:center;padding:28px}
.ips-home-v2 .ips-home-v2__photo-placeholder--about{min-height:440px}
.ips-home-v2 .ips-home-v2__section--soft{background:var(--ips-soft)}
.ips-home-v2 .ips-home-v2__section--dark,.ips-home-v2 .ips-home-v2__section--cta{background:var(--ips-ink);color:var(--ips-white)}
.ips-home-v2 .ips-home-v2__section-heading{max-width:820px;margin-bottom:38px;text-align:center}
.ips-home-v2 .ips-home-v2__section-heading h2{font-size:clamp(2.2rem,4vw,4.2rem);line-height:1.05}
.ips-home-v2 .ips-home-v2__cards{gap:20px}
.ips-home-v2 .ips-home-v2__card{height:100%;min-height:220px;padding:28px;border-radius:24px;background:var(--ips-white);box-shadow:0 12px 40px rgba(29,42,43,.06)}
.ips-home-v2 .ips-home-v2__card--feature{min-height:290px;display:flex;flex-direction:column;justify-content:space-between}
.ips-home-v2 .ips-home-v2__index{color:var(--ips-accent);font-weight:800}
.ips-home-v2 .ips-home-v2__pillars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.ips-home-v2 .ips-home-v2__pillar{grid-column:span 2;min-height:148px;margin:0;padding:24px;border-radius:20px;background:var(--ips-soft-green);overflow-wrap:normal;word-break:normal;hyphens:none}
.ips-home-v2 .ips-home-v2__pillar:nth-child(4){grid-column:2/span 2}
.ips-home-v2 .ips-home-v2__pillar h3,.ips-home-v2 .ips-home-v2__pillar p{margin:0;overflow-wrap:normal;word-break:normal;hyphens:none}
.ips-home-v2 .ips-home-v2__pillar h3{margin-bottom:10px;font-size:clamp(1.15rem,1.8vw,1.45rem)}
.ips-home-v2 .ips-home-v2__checklist{margin:0 0 28px}
.ips-home-v2 .ips-home-v2__checklist li{margin-bottom:10px}
.ips-home-v2 .ips-home-v2__cta{max-width:900px;text-align:center}
.ips-home-v2 .ips-home-v2__cta h2{font-size:clamp(2.4rem,4.8vw,5rem);line-height:1}
.ips-home-v2 .ips-home-v2__cta-note{opacity:.78;margin-top:14px}

@media(max-width:960px){
  .ips-home-v2 .ips-home-v2__pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ips-home-v2 .ips-home-v2__pillar,.ips-home-v2 .ips-home-v2__pillar:nth-child(4){grid-column:auto}
}

@media(max-width:781px){
  .ips-home-v2 .ips-home-v2__hero,.ips-home-v2 .ips-home-v2__section{padding:52px 20px}
  .ips-home-v2 .ips-home-v2__title{font-size:clamp(2.65rem,12vw,4rem);line-height:1;overflow-wrap:normal;word-break:normal;hyphens:none}
  .ips-home-v2 .ips-home-v2__photo-placeholder,.ips-home-v2 .ips-home-v2__photo-placeholder--about{min-height:340px}
  .ips-home-v2 .ips-home-v2__cards--four,.ips-home-v2 .ips-home-v2__cards--two{display:grid!important;grid-template-columns:1fr}
  .ips-home-v2 .ips-home-v2__card{min-height:0}
  .ips-home-v2 .ips-home-v2__pillars{grid-template-columns:1fr}
  .ips-home-v2 .ips-home-v2__pillar{min-height:0}
}
@media (max-width: 781px) {
  .ips-home-v2__hero {
    padding-top: 20px;
  }
}
/* Fotografias da homepage */
.ips-home-v2__hero-media .wp-block-image {
  margin: 0;
  overflow: hidden;
  border-radius: 28px;
}

.ips-home-v2__hero-media .wp-block-image img {
  display: block;
  width: 100%;
  height: 520px;
  object-fit: cover;
  object-position: center 38%;
  border-radius: 28px;
}
.ips-home-v2__about .wp-block-image {
  margin: 0;
  overflow: hidden;
  border-radius: 28px;
}

.ips-home-v2__about .wp-block-image img {
  display: block;
  width: 100%;
  height: 440px;
  object-fit: cover;
  object-position: center 42%;
  border-radius: 28px;
}
@media (max-width: 781px) {
  .ips-home-v2__about .wp-block-image img {
    height: 340px;
    object-position: center 36%;
  }
}
/* Reduz o espaço entre o header global e a homepage */
body:has(.ips-home-v2) .wp-site-blocks > main,
body:has(.ips-home-v2) .wp-block-post-content {
  margin-block-start: 0 !important;
  padding-block-start: 0 !important;
}

body:has(.ips-home-v2) .ips-home-v2__hero {
  margin-top: 0 !important;
  padding-top: 0px !important;
}

/* Mobile */
@media (max-width: 781px) {
  body:has(.ips-home-v2) .ips-home-v2__hero {
    padding-top: 8px !important;
  }
}
/* Hero mais compacto e totalmente visível no primeiro ecrã */
body:has(.ips-home-v2) .ips-home-v2__hero {
  padding-top: 20px !important;
  padding-bottom: 32px !important;
}

.ips-home-v2__hero-grid {
  align-items: flex-start !important;
}

.ips-home-v2__hero-copy,
.ips-home-v2__hero-media {
  align-self: flex-start !important;
}

.ips-home-v2__hero-media .wp-block-image img {
  height: 480px;
}