/* V5 / conteúdo e acessórios. Mantém grid, fontes, bordas, vídeo, temas e acordeão V4. */
:root { --editorial-ink:#111; }
.hero h1{font-size:clamp(38px,7vw,105px);line-height:.96;letter-spacing:-.065em;overflow-wrap:normal}
.hero p{font-size:clamp(13px,1.65vw,23px);line-height:1.35;max-width:850px;text-wrap:pretty;}
/* Card de especialidade sem criar uma nova grade */
.block .specialty-heading{font-size:clamp(22px,2.3vw,39px);letter-spacing:-.055em;overflow-wrap:anywhere;line-height:.98;margin-bottom:18px}
.block .card-microtext{font-family:var(--font-pixel);font-size:clamp(14px,1.3vw,19px);letter-spacing:.035em;margin-top:auto;padding-top:22px;display:block;line-height:1.15}
#sobre .desc-small{margin-bottom:14px;text-transform:none;line-height:1.48}
#sobre .desc-small:last-of-type{margin-bottom:8px}
#sobre .card-microtext{font-size:16px}
#sobre h2{font-size:clamp(23px,3vw,39px)}
#projetos h2{font-size:clamp(27px,4vw,43px)}
#projetos p{margin-bottom:8px}
.block .desc-small{hyphens:auto}
.profile-missing{background:#111 !important;color:#fff;justify-content:flex-end;padding:25px !important}
.profile-fallback{font-family:var(--font-pixel);font-size:clamp(24px,2.6vw,40px);line-height:1.15;font-weight:700;color:#fff;overflow-wrap:anywhere}
.case-item{cursor:pointer}
.case-header{isolation:isolate}
.case-category{font-family:var(--font-pixel);font-size:clamp(12px,1.25vw,18px);letter-spacing:0;text-transform:uppercase;line-height:1.2;max-width:100%;background:#111;color:#fff;display:none;padding:4px 7px;align-self:flex-start;margin-top:auto}
.case-item:hover .case-category,.case-item:focus-visible .case-category,.case-item.is-theme-focus .case-category,.case-item.is-expanded .case-category{display:block}
.case-item.is-theme-focus .case-category{background:var(--scene-accent);color:var(--scene-bg)}
.case-img-placeholder{display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,#171717,#171717 18px,#252525 19px,#252525 20px);}
.case-preview-wordmark{font-family:var(--font-bold);font-weight:800;font-size:clamp(18px,3.1vw,51px);line-height:1;letter-spacing:-.06em;color:#fff;padding:18px;text-align:center;max-width:100%;text-shadow:2px 2px 0 #111}
.case-item[data-project="vera"] .case-img-placeholder{background:linear-gradient(145deg,#160c35,#3b217e)}
.case-item[data-project="ap-med"] .case-img-placeholder{background:linear-gradient(145deg,#091e3a,#13477c)}
body.theme-active .case-item.is-theme-focus .case-preview-wordmark{color:var(--scene-accent)}
/* Header: controles quadrados com o traço sólido da referência */
.header-controls{display:flex;align-items:center;gap:8px;margin-left:20px}
.header-icon,.footer-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:38px;height:38px;padding:6px;border:3px solid currentColor;background:transparent;color:inherit;cursor:pointer;transition:background .25s,color .25s,transform .25s}
.header-icon svg,.footer-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.1;stroke-linecap:square;stroke-linejoin:miter;pointer-events:none}
.header-icon:hover,.header-icon:focus-visible,.footer-icon:hover,.footer-icon:focus-visible{background:#111;color:#fff;transform:translateY(-2px)}
body.theme-active .header-icon:hover,body.theme-active .footer-icon:hover{background:var(--scene-accent);color:var(--scene-bg)}
#sound-toggle[aria-pressed="false"] .sound-wave{display:none}
#sound-toggle[aria-pressed="true"] .sound-slash{display:none}
#sound-toggle[aria-pressed="true"]{background:#111;color:#fff}
body.theme-active #sound-toggle[aria-pressed="true"]{background:var(--scene-accent);color:var(--scene-bg)}
.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);white-space:nowrap;overflow:hidden}
footer .footer-copy{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:clamp(10px,.83vw,13px)}
footer .footer-copy span{font-family:var(--font-pixel);font-size:15px}
.footer-actions{display:flex;gap:8px;align-items:center}
footer .footer-icon{background:#111;color:#fff;width:46px;height:46px;border-color:#111}
body.theme-active footer .footer-icon{background:var(--scene-accent);color:var(--scene-bg);border-color:var(--scene-accent)}
.contact-closer{margin-top:12px}
.contact-cta{font-family:var(--font-bold);font-weight:800;font-size:clamp(14px,1.55vw,20px);display:inline-flex;gap:15px;align-items:center;align-self:flex-start;padding:14px 20px;background:#111;border:4px solid #111;color:#fff;text-decoration:none;transition:background .25s,color .25s,transform .25s}
.contact-cta:hover,.contact-cta:focus-visible{background:transparent;color:#111;transform:translateY(-3px)}
body.theme-active .contact-cta{border-color:var(--scene-focus-ink);background:var(--scene-focus-ink);color:var(--scene-accent)}
body.theme-active .contact-cta:hover{color:var(--scene-focus-ink);background:transparent}
body.theme-active .header-icon{color:var(--scene-accent);border-color:var(--scene-accent)}
body.theme-active .header-icon:hover{color:var(--scene-bg)}
body.theme-active nav .header-icon{border-color:var(--scene-accent)}
@media(min-width:769px){nav{gap:0;margin-left:auto} .header-controls{margin-left:14px} nav a{margin-left:16px}}
@media(max-width:768px){
 .hero h1{font-size:clamp(35px,9.1vw,72px);letter-spacing:-.06em}
 .hero p{font-size:clamp(12px,3.15vw,17px)}
 .block .specialty-heading{font-size:clamp(28px,8.4vw,45px)}
 #sobre .desc-small{font-size:13px}
 #sobre .card-microtext{font-size:15px}
 .logo-box{order:1}.header-controls{order:2;margin:0 12px 0 auto;gap:6px;z-index:190;position:relative}.menu-toggle{order:3}nav{order:4}
 .header-icon{width:36px;height:36px;padding:6px}.header-controls .header-icon:first-child{display:none}
 .case-category{font-size:15px;max-width:100%}
 .case-item.is-theme-focus .case-category{display:block}
 .case-item .case-title{font-size:clamp(19px,5vw,30px)}
 footer .footer-copy{font-size:11px}
}
@media(max-width:420px){.hero h1{font-size:clamp(33px,8.6vw,48px)}.block h2{overflow-wrap:anywhere}.footer-actions{margin-left:auto}}
@media(prefers-reduced-motion:reduce){.header-icon,.footer-icon,.contact-cta{transition:none}}
