/* NUNO VARELA — detalhes que o theme.json não cobre */
.is-style-faixa{display:block;width:fit-content;max-width:100%;background:var(--wp--preset--color--vermelho);color:var(--wp--preset--color--branco) !important;padding:.14em .32em .02em}
p.is-style-faixa{font-family:var(--wp--preset--font-family--display);text-transform:uppercase;line-height:1.05}
.is-style-rotulo{font-weight:700;font-size:var(--wp--preset--font-size--rotulo);letter-spacing:.12em;text-transform:uppercase}
.is-style-citacao{font-family:var(--wp--preset--font-family--serif);font-style:italic;line-height:1.1}
.nv-filete::before{content:"";display:block;width:64px;height:4px;background:currentColor;margin-bottom:12px}
.nv-filete-ouro::before{background:var(--wp--preset--color--ouro)}
.wp-block-group.nv-filete::before{width:100%;flex-basis:100%;margin-bottom:0}
.nv-cover-foto img{object-fit:cover}
.nv-header .wp-block-navigation a{color:var(--wp--preset--color--marmore)}
.nv-header .wp-block-navigation a:hover{color:var(--wp--preset--color--branco);text-decoration:underline;text-decoration-color:var(--wp--preset--color--vermelho);text-decoration-thickness:3px;text-underline-offset:6px}
.nv-logo img{height:44px;width:auto}
.nv-card{background:var(--wp--preset--color--branco)}
.nv-card .wp-block-post-featured-image img{aspect-ratio:4/5;object-fit:cover;width:100%;filter:grayscale(.15) contrast(1.05)}
.nv-card .wp-block-post-title a{color:var(--wp--preset--color--preto);text-decoration:none}
.nv-card .wp-block-post-title a:hover{background:var(--wp--preset--color--vermelho);color:var(--wp--preset--color--branco)}
.nv-aspas{font-family:var(--wp--preset--font-family--serif);font-size:180px;line-height:.6;color:var(--wp--preset--color--vermelho);margin:0}
.wp-block-post-content a{text-decoration-thickness:2px;text-underline-offset:4px}
.wp-block-query-pagination a{font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:14px}
@media (max-width:781px){.nv-hero-texto{order:2}}
.nv-foto img{width:100%;display:block}
.nv-numero{font-family:var(--wp--preset--font-family--display);font-size:var(--wp--preset--font-size--titulo);line-height:1;color:var(--wp--preset--color--vermelho)}

/* secções encostadas umas às outras */
.wp-site-blocks > * + *{margin-block-start:0}
main > .alignfull,main > .wp-block-group.alignfull{margin-block-start:0 !important;margin-block-end:0 !important}
.nv-pilha{display:flex;flex-direction:column;align-items:flex-start}
.nv-pilha > *{margin-block-start:0}
.nv-mono img{width:96px;height:96px;display:block}
.nv-linha{border-top:4px solid var(--wp--preset--color--preto)}
.wp-block-post-featured-image img{object-position:50% 25%}

/* v1.1 — composição: tudo o que importa no primeiro ecrã, margens iguais */
.nv-mono{display:block;margin-bottom:24px}
.wp-block-post-template>li{display:flex}
.wp-block-post-template>li>.nv-card{width:100%}
.nv-hero .nv-foto img{object-position:50% 78%}
@media (max-width:781px){
  .nv-hero .nv-foto img{max-height:52svh}
  .nv-hero-texto{padding-top:32px !important;padding-bottom:64px !important}
}
@media (min-width:782px){
  .nv-hero-texto{padding-left:max(clamp(20px,5vw,64px),calc((100vw - 1240px)/2)) !important;padding-top:clamp(24px,5vh,64px) !important;padding-bottom:clamp(24px,5vh,64px) !important}
  .nv-hero-texto .has-gigante-font-size{font-size:clamp(72px,min(10.4vw,18vh),150px) !important}
  .nv-hero .nv-foto img{max-height:calc(100vh - 92px)}
  .nv-quem h2{font-size:clamp(48px,5.4vw,76px) !important}
  .nv-manifesto h2{font-size:min(10vw,140px) !important}
}

/* v1.1 — resposta aos controlos */
.wp-element-button{transition:transform .25s cubic-bezier(.16,1,.3,1),background-color .2s,color .2s}
.wp-element-button:hover{transform:translateY(-2px)}
.wp-element-button:active{transform:scale(.98)}
.has-preto-background-color .wp-block-button__link:not(.has-background):hover{background:var(--wp--preset--color--marmore);color:var(--wp--preset--color--preto)}
.has-preto-background-color .wp-block-button__link.has-marmore-background-color:hover{background:var(--wp--preset--color--branco) !important}
.wp-block-button__link.has-preto-background-color:hover{background:var(--wp--preset--color--vermelho) !important}
a:focus-visible,.wp-element-button:focus-visible{outline:3px solid var(--wp--preset--color--ouro);outline-offset:3px}
.nv-card .wp-block-post-featured-image{overflow:hidden}
.nv-card .wp-block-post-featured-image img{transition:transform .9s cubic-bezier(.16,1,.3,1)}
.nv-card:hover .wp-block-post-featured-image img{transform:scale(1.04)}
.nv-fotos .nv-foto{overflow:hidden}
#contacto{scroll-margin-top:24px}

/* v1.1 — motion: a faixa desenrola-se como a passadeira. Tempos do storyboard no Figma. Só transform e opacity. */
@media (prefers-reduced-motion:no-preference){
  :root{--nv-ease:cubic-bezier(.16,1,.3,1)}
  html{scroll-behavior:smooth}
  @keyframes nv-sobe{from{opacity:0;transform:translateY(var(--nv-dy,24px))}to{opacity:1;transform:none}}
  @keyframes nv-foto{from{opacity:0;transform:scale(1.06)}to{opacity:1;transform:none}}
  @keyframes nv-desenrola{from{transform:scaleX(0)}to{transform:none}}
  .nv-hero .nv-foto{overflow:hidden}
  .nv-hero .nv-foto img{animation:nv-foto 2.4s var(--nv-ease) both}
  .nv-hero-texto .nv-filete{animation:nv-sobe .6s var(--nv-ease) .15s both}
  .nv-hero-texto h1{--nv-dy:32px;animation:nv-sobe .7s var(--nv-ease) .25s both}
  .nv-hero-texto .is-style-citacao{animation:nv-sobe .6s var(--nv-ease) 1.05s both}
  .nv-hero-texto .wp-block-button:nth-child(1){--nv-dy:16px;animation:nv-sobe .55s var(--nv-ease) 1.15s both}
  .nv-hero-texto .wp-block-button:nth-child(2){--nv-dy:16px;animation:nv-sobe .55s var(--nv-ease) 1.22s both}
  .nv-topo .nv-filete{animation:nv-sobe .6s var(--nv-ease) .1s both}
  .nv-topo h1{--nv-dy:32px;animation:nv-sobe .7s var(--nv-ease) .2s both}
  .nv-topo .is-style-citacao{animation:nv-sobe .6s var(--nv-ease) 1.05s both}
  .nv-hero .is-style-faixa,.nv-topo .is-style-faixa{background:none;position:relative;isolation:isolate}
  .nv-hero .is-style-faixa::before,.nv-topo .is-style-faixa::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--wp--preset--color--vermelho);transform-origin:0 50%;animation:nv-desenrola .8s var(--nv-ease) .45s both}
  .nv-faixa-texto{display:inline-block;--nv-dy:18px;animation:nv-sobe .6s var(--nv-ease) .75s both}
  .nv-entra{opacity:0;transform:translateY(24px);transition:opacity .7s var(--nv-ease) calc(var(--nv-i,0)*70ms),transform .7s var(--nv-ease) calc(var(--nv-i,0)*70ms)}
  .nv-entra.nv-visto{opacity:1;transform:none}
  .nv-desenrolar{position:relative;isolation:isolate;overflow:hidden;background-color:var(--wp--preset--color--preto) !important}
  .nv-desenrolar::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--wp--preset--color--vermelho);transform:scaleX(0);transform-origin:0 50%;transition:transform 1.1s var(--nv-ease)}
  .nv-desenrolar.nv-visto::before{transform:none}
  .nv-fotos img{transform:translateY(var(--nv-p,0px)) scale(1.12);will-change:transform}
}

/* v1.1.1 — afinações */
.wp-block-button__link[href^="mailto:"]{text-transform:none;letter-spacing:.02em;font-size:var(--wp--preset--font-size--pequeno)}
.single .wp-block-post-title{font-size:clamp(44px,6vw,80px) !important;line-height:1.02}
.single .wp-block-post-featured-image{max-width:960px;margin-left:auto;margin-right:auto}
.single .wp-block-post-featured-image img{object-position:50% 20%}
@media (max-width:781px){
  .nv-quem h2{font-size:11vw !important}
  .nv-manifesto h2{font-size:18.5vw !important}
}
.wp-block-post-content h2{margin-top:clamp(40px,5vw,64px)}
.wp-block-post-content .wp-block-quote{margin-top:40px;margin-bottom:40px}
