/* Compactação editorial: mantém todo o conteúdo e reduz apenas espaço visual. */

/* Quatro pilares: mesma proporção para as quatro imagens, menor e mais leve. */
.pillars{padding-block:clamp(72px,8vw,108px)}
.pillars .section-heading{margin-bottom:30px}
.pillar-grid{gap:12px;background:transparent;border:0}
.pillar-card,.pillar-card:nth-child(2n){grid-template-columns:minmax(190px,.66fr) minmax(0,1.34fr);min-height:280px}
.pillar-visual img{min-height:280px}
.pillar-content{padding:clamp(23px,2.5vw,36px)}
.pillar-content .pillar-number{font-size:clamp(3.2rem,4.5vw,5.1rem);margin-bottom:10px}
.pillar-content h3{font-size:clamp(2.9rem,4.1vw,4.5rem);margin-bottom:9px}
.pillar-content p{font-size:.9rem;line-height:1.48;margin-bottom:9px}
.pillar-content strong{font-size:.82rem;line-height:1.35}

/* Workbook: passa de uma secção de destaque a um apontamento útil. */
.takeaway{padding-block:clamp(58px,7vw,86px)}
.takeaway-heading{margin-bottom:18px}
.takeaway-heading h2{margin-bottom:0;font-size:clamp(3rem,5.2vw,5rem)}
.takeaway-words{gap:8px 14px;margin:22px 0 30px}
.takeaway-words span{font-size:clamp(1.55rem,2.4vw,2.45rem)}
.workbook-card{grid-template-columns:minmax(180px,.34fr) minmax(0,1fr);min-height:200px}
.workbook-label{padding:26px}
.workbook-label strong{font-size:clamp(2.55rem,3.8vw,3.8rem)}
.workbook-copy{padding:clamp(25px,3.5vw,46px)}
.workbook-copy h3{margin-bottom:10px;font-size:clamp(2.5rem,3.6vw,3.7rem)}
.workbook-copy p{font-size:.91rem;line-height:1.52}
.workbook-copy .workbook-question{margin-top:13px}

/* Local: informação prática e fotografia mais contida. */
.venue{padding-block:clamp(58px,7vw,88px)}
.venue-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:16px}
.venue-heading{margin-bottom:16px}
.venue h2{font-size:clamp(4.4rem,9vw,8.2rem)}
.venue-photo img{min-height:270px}
.venue-details{padding:clamp(22px,3vw,34px)}
.venue-intro{margin-bottom:17px;font-size:.96rem}
.venue-details dl>div{padding:8px 0}

/* Bilhetes: mantém tudo legível, sem uma página inteira por cartão. */
.tickets{padding-top:clamp(72px,8vw,104px);padding-bottom:clamp(68px,7vw,92px)}
.tickets-heading{margin-bottom:34px}
.ticket-grid{gap:16px;max-width:920px}
.ticket-card{min-height:0;padding:clamp(24px,3vw,34px)}
.ticket-price{margin:16px 0}
.ticket-price strong{font-size:clamp(5.5rem,8vw,7.2rem)}
.ticket-intro{min-height:0;margin-bottom:10px}
.ticket-card ul{margin:4px 0 20px}
.ticket-card li{padding-block:7px;font-size:.84rem}
.button-ticket{min-height:50px}
.vp60-explainer{margin-top:34px;padding-top:34px}

/* Fecho: conserva o impacto, mas reduz a área vazia em desktop e telemóvel. */
.closing{min-height:520px;padding-block:72px}
.closing-content{max-width:820px}
.closing-content>.marker{margin-bottom:13px;font-size:clamp(1.8rem,3vw,3rem)}
.closing h2{font-size:clamp(3rem,5.2vw,5.3rem);line-height:.88}
.closing-content>p:not(.marker){margin:20px auto;font-size:.96rem}
.closing-event{margin:21px 0}

@media (width<=700px){
  .pillars{padding-block:58px}
  .pillar-grid{gap:10px}
  .pillar-card,.pillar-card:nth-child(2n){display:block;min-height:0}
  .pillar-visual img{aspect-ratio:16/7;min-height:0;object-position:center 42%}
  .pillar-content{padding:20px 20px 23px}
  .pillar-content .pillar-number{font-size:3rem;margin-bottom:7px}
  .pillar-content h3{font-size:clamp(2.55rem,11.5vw,3.35rem);margin-bottom:8px}
  .pillar-content p{font-size:.9rem;line-height:1.48;margin-bottom:9px}
  .pillar-content strong{font-size:.8rem}

  .takeaway,.venue{padding-block:52px}
  .takeaway-heading{margin-bottom:14px}
  .takeaway-heading h2{font-size:clamp(2.85rem,12.8vw,3.75rem)}
  .takeaway-words{gap:6px 11px;margin:16px 0 22px}
  .takeaway-words span{font-size:1.45rem}
  .workbook-card{grid-template-columns:1fr;min-height:0}
  .workbook-label{min-height:114px;padding:22px}
  .workbook-label strong{font-size:3rem}
  .workbook-copy{padding:24px 22px 26px}
  .workbook-copy h3{font-size:2.85rem}

  .venue-grid{gap:14px}
  .venue-heading{margin-bottom:6px}
  .venue h2{font-size:clamp(4.1rem,20vw,6.2rem)}
  .venue-photo img{aspect-ratio:16/9;min-height:0}
  .venue-details{padding:22px}
  .venue-intro{margin-bottom:13px;font-size:.91rem}

  .tickets{padding-block:58px}
  .tickets-heading{margin-bottom:25px}
  .ticket-grid{gap:12px}
  .ticket-card{padding:24px 21px}
  .ticket-price{margin:13px 0}
  .ticket-price strong{font-size:5.4rem}
  .ticket-card ul{margin:3px 0 17px}
  .ticket-card li{padding-block:6px;font-size:.82rem}
  .vp60-explainer{margin-top:24px;padding-top:24px}

  .closing{min-height:440px;padding-block:60px}
  .closing h2{font-size:clamp(2.85rem,12.7vw,3.85rem)}
  .closing-content>p:not(.marker){font-size:.9rem;line-height:1.52}
  .closing-event{margin:17px 0}
}
