/* sobre — quem é a Grazi (prefixo so-) */
/* a foto sangra pela esquerda e pelo topo da seção */
.so-a{display:grid;grid-template-columns:minmax(0,50vw) minmax(0,1fr);gap:clamp(32px,5vw,96px);align-items:center;
  padding-right:var(--margem);margin-top:calc(-1 * var(--pad-s))}
.so-foto{margin:0;position:relative;aspect-ratio:1100/1730;overflow:hidden;background:var(--c3)}
.so-foto img{width:100%;height:100%;object-fit:cover}
.so-familia{position:absolute;left:0;right:0;bottom:0;margin:0;padding:clamp(64px,10vh,120px) clamp(20px,3vw,44px) clamp(20px,3vw,40px);
  font-family:var(--serifa);font-size:clamp(1.25rem,1rem + .9vw,1.9rem);line-height:1.22;color:#fbf3ef;text-wrap:balance;
  background:linear-gradient(transparent, rgb(30 20 18 / .55) 40%, rgb(30 20 18 / .86))}
.so-texto{max-width:34em;padding-block:clamp(48px,8vh,96px) 0}
.so-simples{margin:clamp(24px,4vh,40px) 0 0}
.so-crn{margin:clamp(24px,4vh,40px) 0 0}

/* as quatro linhas: o fio do dia risca o atalho */
.so-b{margin-top:clamp(96px,15vh,180px)}
.so-b-rot{margin:0 0 clamp(20px,3vh,32px)}
.so-b-grade{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(15em,1fr);gap:clamp(32px,5vw,88px);align-items:end}
.so-linhas{margin:0}
.so-linha{font-family:var(--serifa);font-size:clamp(1.8rem,1rem + 2.1vw,3.1rem);line-height:1.18;letter-spacing:-.012em;margin:0 0 .3em;
  color:rgb(var(--suave-rgb));text-wrap:balance}
.so-linha b{font-weight:400;color:rgb(var(--tinta-rgb))}
.so-ultima{margin:0}
.so-n,.so-e{display:block}
.so-e{padding-left:clamp(28px,6vw,110px)}
.so-ultima b{color:var(--acento)}
.so-risco{position:relative;white-space:nowrap}
.so-risco::after{content:"";position:absolute;left:-.06em;right:-.06em;top:58%;height:1.5px;
  background:repeating-linear-gradient(90deg, var(--acento) 0 5px, transparent 5px 9px);
  clip-path:inset(0 100% 0 0);transition:clip-path 1.4s var(--ease) calc(var(--atraso,0s) + .7s)}
.so-linha.wf-visto .so-risco::after,.no-js .so-risco::after{clip-path:inset(0)}

@media (min-width:900px){ .so-b-grade{padding-right:clamp(0px,7vw,130px)} .so-n{white-space:nowrap} }
.so-atalho{margin:0;padding-left:clamp(20px,2.4vw,36px);border-left:1px solid rgb(var(--tinta-rgb) / .25)}

@media (max-width:899px){
  .so-a{grid-template-columns:1fr;padding-right:0}
  .so-foto{max-height:88svh;width:100%}
  .so-foto img{object-position:50% 20%}
  .so-texto{padding-inline:var(--margem)}
  .so-b-grade{grid-template-columns:1fr}
  .so-e{padding-left:1.2em}
  .so-atalho{margin-top:clamp(40px,6vh,64px)}
}
@media (prefers-reduced-motion:reduce){
  .so-risco::after{transition:none;clip-path:inset(0)}
}
