/* Estilos exclusivos das paginas internas. Carregado depois de site.css. */
.internal-hero{background:var(--navy-deep);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.internal-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(55% 130% at 88% 40%,rgba(201,181,138,.14),transparent 62%),linear-gradient(135deg,var(--navy-deep),var(--navy));z-index:-1}
.internal-hero .container{padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem)}
.internal-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.internal-title{font-size:clamp(3.5rem,9vw,7.5rem);font-weight:900;font-variation-settings:"wdth" 72;text-transform:uppercase;line-height:.86;margin-bottom:1.5rem}
.internal-lead{font-size:clamp(1.2rem,2vw,1.55rem);line-height:1.45;color:rgba(255,255,255,.76);max-width:48ch;margin:0}
.internal-hero figure{margin:0;border:1px solid var(--linha-dark);border-radius:12px;overflow:hidden;background:var(--navy)}
.internal-hero figure img{width:100%;aspect-ratio:16/10;object-fit:cover;filter:saturate(.78) contrast(1.05)}

.content-narrow{max-width:820px}
.pillar{padding:clamp(3.5rem,7vw,6rem) 0;border-bottom:1px solid var(--linha)}
.pillar:last-child{border-bottom:0}
.pillar-head{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:2rem 4rem;margin-bottom:2.25rem;align-items:start}
.pillar-number{font-family:var(--mono);font-size:.78rem;letter-spacing:.12em;color:var(--verde);text-transform:uppercase}
.pillar h2{font-size:clamp(2rem,4.5vw,3.6rem);font-weight:850;font-variation-settings:"wdth" 84;color:var(--navy);margin:.4rem 0 1rem}
.pillar-quote{margin:0;padding:1.1rem 1.35rem;border-left:3px solid var(--feltro);background:#fff;color:var(--tinta);font-style:italic}
.proposal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.proposal{background:#fff;border:1px solid var(--linha);border-radius:10px;padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;min-width:0}
.proposal .number{font-family:var(--mono);font-size:.77rem;letter-spacing:.06em;text-transform:uppercase;color:var(--verde);font-weight:500}
.proposal h3{font-size:1.2rem;color:var(--navy);font-variation-settings:"wdth" 96}
.proposal p{color:var(--cinza);margin:0;flex:1}
.proposal a{font-family:var(--display);font-weight:700;font-size:.84rem;color:var(--navy);display:inline-flex;align-items:center;gap:.35rem;text-decoration:underline;text-decoration-color:var(--feltro);text-underline-offset:4px}
.confirm{color:#7a4f00;font-family:var(--mono);font-size:.76rem}
.mandate-summary{background:var(--navy);color:#fff}
.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--linha-dark);border:1px solid var(--linha-dark);margin-top:2.5rem}
.summary-stat{background:var(--navy-deep);padding:clamp(1.5rem,3vw,2.5rem)}
.summary-stat b{font-family:var(--display);font-variation-settings:"wdth" 76;font-size:clamp(2.5rem,5vw,4.25rem);line-height:1;color:var(--feltro-light);display:block}
.summary-stat span{font-family:var(--mono);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.65);display:block;margin-top:.65rem}
.commission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.25rem}
.commission{border:1px solid var(--linha);border-radius:10px;background:#fff;padding:1.5rem}
.commission b{font-family:var(--display);color:var(--navy);display:block;margin-bottom:.45rem}
.commission span{color:var(--cinza)}

.bio-story{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.bio-story .bio-photo{top:104px}
.editorial-copy p{font-size:clamp(1.08rem,1.4vw,1.2rem);line-height:1.75;margin-bottom:1.4rem}
.editorial-copy p:first-child::first-letter{float:left;font-family:var(--display);font-weight:900;font-size:4.4rem;line-height:.76;padding:.16em .1em 0 0;color:var(--navy)}
.timeline-wrap{background:#fff;border-top:1px solid var(--linha);border-bottom:1px solid var(--linha)}
.gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}
.gallery figure{margin:0;border-radius:10px;overflow:hidden;background:var(--navy);position:relative;grid-column:span 4}
.gallery figure:nth-child(1),.gallery figure:nth-child(6){grid-column:span 8}
.gallery img{width:100%;height:100%;min-height:280px;aspect-ratio:4/3;object-fit:cover;filter:saturate(.82)}
.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:2.5rem 1rem .85rem;background:linear-gradient(transparent,rgba(7,14,36,.9));color:#fff;font-family:var(--mono);font-size:.7rem;letter-spacing:.05em}

.news-index{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}
.news-index .card{height:100%}
.news-index .card:nth-child(1),.news-index .card:nth-child(2){grid-column:span 1}
.news-index .card:focus-visible{outline-offset:5px}
.news-story{padding:clamp(4rem,8vw,7rem) 0;border-top:1px solid var(--linha);scroll-margin-top:76px}
.news-story:nth-of-type(even){background:#fff}
.news-story-grid{display:grid;grid-template-columns:minmax(260px,.75fr) minmax(0,1.25fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.news-story figure{margin:0;border-radius:10px;overflow:hidden;background:var(--navy)}
.news-story figure img{width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.8)}
.news-story time{font-family:var(--mono);font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;color:var(--verde)}
.news-story h2{font-size:clamp(2rem,4vw,3.25rem);font-variation-settings:"wdth" 88;color:var(--navy);margin:.75rem 0 1.75rem;max-width:20ch}
.news-story .article-body{max-width:68ch}
.news-story .article-body p{font-size:1.08rem;line-height:1.75}

.contact-page-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.office-block{background:#fff;border:1px solid var(--linha);border-radius:10px;padding:clamp(1.5rem,3vw,2.25rem);margin-bottom:1rem}
.office-block h3{font-size:1.4rem;color:var(--navy);margin-bottom:1rem}
.office-block address{font-style:normal;color:var(--cinza)}
.office-block address a{color:var(--tinta);text-decoration:underline;text-decoration-color:var(--feltro);text-underline-offset:3px;overflow-wrap:anywhere}
.contact-form{background:#fff;border:1px solid var(--linha);border-radius:12px;padding:clamp(1.5rem,4vw,3rem)}
.contact-form h2{font-size:clamp(1.8rem,3vw,2.5rem);color:var(--navy);margin-bottom:.75rem}
.contact-form .form-note{color:var(--cinza);font-size:.95rem;margin-bottom:1.75rem}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.field{display:grid;gap:.4rem}
.field.full{grid-column:1/-1}
.field label{font-family:var(--display);font-weight:700;font-size:.86rem;color:var(--navy)}
.field input,.field textarea{width:100%;border:1px solid rgba(14,26,63,.25);border-radius:6px;background:var(--papel);color:var(--tinta);font:inherit;padding:.8rem .9rem}
.field textarea{min-height:170px;resize:vertical}
.field input:focus,.field textarea:focus{border-color:var(--verde)}
.contact-form .btn{margin-top:1.25rem}

@media (max-width:900px){
  .internal-hero-grid,.pillar-head,.bio-story,.news-story-grid,.contact-page-grid{grid-template-columns:1fr}
  .internal-hero figure{max-width:620px}
  .bio-story .bio-photo{position:static;max-width:560px}
  .news-index{grid-template-columns:repeat(2,1fr)}
  .gallery figure,.gallery figure:nth-child(1),.gallery figure:nth-child(6){grid-column:span 6}
}
@media (max-width:700px){
  .proposal-list,.news-index,.commission-grid{grid-template-columns:1fr}
  .summary-grid{grid-template-columns:1fr}
  .gallery{display:grid;grid-template-columns:1fr}
  .gallery figure,.gallery figure:nth-child(1),.gallery figure:nth-child(6){grid-column:auto}
  .form-grid{grid-template-columns:1fr}
  .field.full{grid-column:auto}
}
@media (max-width:420px){
  .internal-title{font-size:clamp(3rem,18vw,4.3rem)}
  .internal-hero .container{padding-top:3.25rem;padding-bottom:3.25rem}
  .proposal,.office-block,.contact-form{padding:1.2rem}
  .gallery img{min-height:230px}
  .contact-form .btn{width:100%;justify-content:center;white-space:normal;text-align:center}
}
@media (prefers-reduced-motion:reduce){
  .proposal,.gallery img{transition:none}
}

/* ajustes do Maestro */
.contact-form button,.contact-form .btn{transition:transform 160ms var(--ease-out),background .2s ease}
.contact-form button:active{transform:scale(.97)}
