/* Borgo Punta Villa · Atelier Blu 6.7
   Warmth, contrast and hero refinements requested in the latest review.
*/
:root{
  --bpv67-light:#ffffff;
  --bpv67-soft:#d8eaf8;
  --bpv67-soft-2:#e7f3fc;
  --bpv67-warm:#f7f3ec;
  --bpv67-warm-line:#ebe2d5;
}

/* 1) Restore legibility on dark and photographic sections. */
body.bpv-editorial-interior :is(
  .page-hero.apartment-archive-hero.bpv-archive-hero-has-photo,
  .bpv-residence-gallery-quote,
  .bpv-residence-island,
  .where-parking-section,
  .places-index-hero,
  .place-card-media,
  .places-index-cta,
  .bpv62-cta
){color:var(--bpv67-light)}

body.bpv-editorial-interior :is(
  .page-hero.apartment-archive-hero.bpv-archive-hero-has-photo,
  .bpv-residence-gallery-quote,
  .bpv-residence-island,
  .where-parking-section,
  .places-index-hero,
  .place-card-media,
  .places-index-cta,
  .bpv62-cta
) :is(h1,h2,h3,h4,.a-heading,.kicker,.a-section-index,.bpv62-cta-eyebrow,.place-card-kicker,.place-card-link){color:var(--bpv67-light)!important;-webkit-text-fill-color:var(--bpv67-light)}

body.bpv-editorial-interior :is(
  .page-hero.apartment-archive-hero.bpv-archive-hero-has-photo,
  .bpv-residence-gallery-quote,
  .bpv-residence-island,
  .where-parking-section,
  .places-index-hero,
  .place-card-media,
  .places-index-cta,
  .bpv62-cta
) :is(em,.bpv-accent,.kicker.light,.bpv62-cta-eyebrow,.place-card-kicker){color:var(--bpv67-soft)!important;-webkit-text-fill-color:var(--bpv67-soft)}

body.bpv-editorial-interior :is(
  .page-hero.apartment-archive-hero.bpv-archive-hero-has-photo,
  .bpv-residence-gallery-quote,
  .bpv-residence-island,
  .where-parking-section,
  .places-index-hero,
  .place-card-media,
  .places-index-cta,
  .bpv62-cta
) :is(p,li,.lead,.place-card-copy p){color:rgba(255,255,255,.86)!important;-webkit-text-fill-color:rgba(255,255,255,.86)}

body.bpv-editorial-interior :is(.bpv-residence-gallery-quote,.bpv-residence-island,.where-parking-section,.places-index-hero,.places-index-cta,.bpv62-cta) :is(h1,h2) em{color:var(--bpv67-soft)!important;-webkit-text-fill-color:var(--bpv67-soft)}

/* 2) Apartments hero like the homepage: no frosted box, only a blue left gradient over the selected photo. */
.page-hero.apartment-archive-hero.bpv-archive-hero-has-photo{
  position:relative;
  padding:clamp(132px,13vw,188px) 0 clamp(78px,8vw,110px);
  overflow:hidden;
  background:#0a2a54;
}
.page-hero.apartment-archive-hero.bpv-archive-hero-has-photo::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(6,24,46,.88) 0%,rgba(6,24,46,.80) 28%,rgba(6,24,46,.48) 52%,rgba(6,24,46,.14) 74%,rgba(6,24,46,.10) 100%),
    linear-gradient(180deg,rgba(6,24,46,.18),rgba(6,24,46,.40)),
    var(--bpv-archive-hero-image) center/cover no-repeat;
}
.page-hero.apartment-archive-hero .container{position:relative;z-index:1}
.bpv-archive-hero-panel{
  max-width:min(780px,100%);
  padding:0;
  background:none;
  border:0;
  border-radius:0;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  box-shadow:none;
}
.page-hero.apartment-archive-hero.bpv-archive-hero-has-photo .a-section-index{margin-bottom:18px}
.page-hero.apartment-archive-hero.bpv-archive-hero-has-photo .a-heading{
  max-width:950px;
  color:#fff!important;
}
.page-hero.apartment-archive-hero.bpv-archive-hero-has-photo .a-heading em{color:var(--bpv67-soft)!important;-webkit-text-fill-color:var(--bpv67-soft)}
.page-hero.apartment-archive-hero.bpv-archive-hero-has-photo .lead{
  max-width:660px;
  color:rgba(255,255,255,.84)!important;
}

/* 3) Residence history: warmer and less aseptic, with an integrated photo. */
.bpv-residence-history{
  background:linear-gradient(180deg,var(--bpv67-warm) 0%,#eff4fa 100%);
  padding:clamp(72px,7.4vw,106px) 0;
  border-top:1px solid var(--bpv67-warm-line);
  border-bottom:1px solid #dfe8f2;
}
.bpv-residence-history-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,.95fr);
  gap:clamp(30px,4.4vw,62px);
  align-items:start;
}
.bpv-residence-history-copy{max-width:740px;padding-top:8px}
.bpv-residence-history-copy .kicker{color:#2f79c0}
.bpv-residence-history-copy h2{
  margin:0 0 22px;
  font-size:clamp(44px,4.9vw,72px);
  line-height:1.03!important;
  letter-spacing:-.062em;
}
.bpv-residence-history-copy p{
  margin:0;
  font-size:clamp(17px,1.5vw,20px);
  line-height:1.88;
  color:#50687b;
}
.bpv-residence-history-aside{display:grid;gap:18px}
.bpv-residence-history-photo{
  margin:0;
  background:#fff;
  border:1px solid rgba(21,63,99,.08);
  border-radius:28px;
  overflow:hidden;
  box-shadow:0 20px 48px rgba(27,63,91,.08);
}
.bpv-residence-history-photo img{
  display:block;
  width:100%;
  aspect-ratio:4 / 3;
  object-fit:cover;
}
.bpv-residence-history-photo figcaption{
  padding:15px 18px 17px;
  font-size:12px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#446075;
}
.bpv-residence-history-facts{display:grid;gap:14px}
.bpv-residence-history-facts article{
  background:rgba(255,255,255,.95);
  border:1px solid rgba(14,68,117,.08);
  border-radius:24px;
  padding:24px 24px 22px;
  box-shadow:0 14px 32px rgba(32,69,99,.05);
}
.bpv-residence-history-facts span{display:block;font:600 12px/1 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#2f79c0;margin-bottom:16px}
.bpv-residence-history-facts strong{display:block;font:500 clamp(24px,2vw,29px)/1.1 'Manrope',sans-serif;letter-spacing:-.04em;color:#2a3744;margin-bottom:8px}
.bpv-residence-history-facts p{font-size:15px;line-height:1.68;color:#51687c;margin:0}

/* 4) Caprera icon: stylised museum, coherent with the other cards. */
.bpv67-caprera-icon svg{display:block;width:30px;height:30px;margin:auto}

/* 5) Keep text readable in the residence gallery quote block. */
.bpv-residence-gallery-quote p{
  color:#fff!important;
  opacity:.84;
}
.bpv-gallery-inline-link{color:#fff!important}
.bpv-gallery-inline-link span{color:var(--bpv67-soft)!important}

@media(max-width:1080px){
  .bpv-residence-history-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .page-hero.apartment-archive-hero.bpv-archive-hero-has-photo{padding:112px 0 60px}
  .bpv-residence-history{padding:64px 0}
  .bpv-residence-history-photo{border-radius:22px}
  .bpv-residence-history-facts article{padding:20px 18px 18px;border-radius:20px}
}
