/* ========================================================================== 
   V12 — personal voice, lighter hero UI, reordered story and performance pass
   ========================================================================== */

/* Header: the name is enough; repeated role labels are deliberately removed. */
.brand-copy { gap: 0; }
.brand-copy small[hidden],
#brand-role:empty { display: none !important; }
.brand-copy strong { line-height: 1.05; }

/* The status now says only what matters. No pseudo-system code. */
.availability-line {
  gap: 10px;
  padding-inline: 14px;
  backdrop-filter: blur(8px) saturate(1.05);
}
.availability-line::after { display: none; }

/* Hero machine: less decorative telemetry, stronger meaning. */
.operator-card { width: min(55%, 410px); }
.operator-photo-wrap { aspect-ratio: .82; }






.ai-core { width: 78px; }
.ai-core strong { font-size: 21px; }
.ai-core span { max-width: 64px; text-align: center; font-size: 7.5px; line-height: 1.15; }


/* The honest explanation should feel open rather than corporate. */
.manifesto-grid { grid-template-columns: .28fr 1.32fr .92fr; }
.manifesto-grid h2 { max-width: 18ch; }
.manifesto-grid p { max-width: 54ch; }

/* Projects now start immediately after the site-purpose statement. */
.projects { padding-top: 98px; }
.project-console { contain: layout paint; }
.project-tabs { border-top: 0; }


.project-case-grid article { min-height: 145px; }
.project-case-grid p { font-size: 14px; line-height: 1.58; }


/* The three portrait poses become visible as tasteful local-only guides until
   actual transparent images are supplied. The JS never shows these on a live domain. */











/* Actual transparent poses use the same choreography as the guides. */




/* CV intentionally closes the page after the contact block. */
.cv { padding-top: 82px; padding-bottom: 90px; }
.cv .section-id { margin-bottom: 28px; }


.cosmic-image { will-change: auto; transform: scale(1.035); }
.cosmic-aurora { filter: blur(48px); opacity: .17; }
.aurora-a { animation-duration: 28s; }
.aurora-b { animation-duration: 34s; }
.hero-machine::before,
.project-console,
.contact-panel{ backdrop-filter: blur(9px) saturate(1.06); }

/* Skip layout and paint work for sections that are far below the viewport. */
.projects,
.trust,
.profile,
.contact,
.cv {
  content-visibility: auto;
  contain-intrinsic-size: 900px;
}

@media (max-width: 1180px) {
  
  
  .manifesto-grid { grid-template-columns: 1fr; }
  .manifesto-grid h2 { max-width: 22ch; }
  .manifesto-grid p { max-width: 70ch; }
}



@media (max-width: 640px) {
  .availability-line { font-size: 11px; }
  .hero-machine { min-height: 480px; }
  .operator-card { width: 64%; }
  
  
  
  .ai-core { width: 62px; }
  .ai-core strong { font-size: 17px; }
  .ai-core span { font-size: 6px; }
  
  
  
  
  
  .project-case-grid article { min-height: 0; }
  .projects, .trust, .profile, .contact, .cv { contain-intrinsic-size: 720px; }
}

@media (prefers-reduced-motion: reduce) {
  .cosmic-image { transform: none; }
}
