/* Personal header/hero refinement. WordPress keeps its existing shared styles. */
html { scrollbar-gutter:stable; }
.personal-header nav { gap:24px; }
.personal-header nav a { min-height:44px; display:inline-flex; align-items:center; }
.hero-personal { display:flex; align-items:center; min-height:560px; padding:72px 0 88px; }
.hero-personal .hero-copy { width:100%; max-width:480px; }
.hero-personal h1 { font-size:clamp(64px,7.5vw,104px); line-height:1.08; letter-spacing:-3.5px; margin:0 0 18px; }
.hero-role { font-size:18px; line-height:1.5; color:var(--accent); margin:0; }
.hero-personal .hero-intro { max-width:440px; font-size:17px; line-height:1.8; color:#d0d1c9; margin:24px 0 0; text-wrap:pretty; }
.hero-personal .hero-actions { display:flex; gap:24px; margin-top:30px; }
.hero-personal .hero-button { gap:18px; }
.hero-personal .hero-button-secondary { border:0; border-radius:0; background:transparent; box-shadow:none; padding-inline:0; color:var(--ink); }
.hero-personal .hero-button-secondary span { padding-block:5px; border-bottom:1px solid #858a7d; }
.hero-personal .hero-button-secondary:hover { background:transparent; color:var(--accent); box-shadow:none; }
/* A modal navigation surface, with no cards or repeated directional icons. */
.mobile-navigation { position:fixed; inset:0; width:100%; max-width:none; height:100dvh; max-height:none; margin:0; padding:0; border:0; background:var(--bg); color:var(--ink); overflow:auto; overscroll-behavior:contain; scrollbar-gutter:stable; }
.mobile-navigation::backdrop { background:#121817; }
.mobile-navigation-inner { min-height:100%; display:flex; flex-direction:column; padding-bottom:max(32px,env(safe-area-inset-bottom)); }
.mobile-navigation-top { display:flex; align-items:center; justify-content:space-between; min-height:89px; padding-block:20px; border-bottom:1px solid var(--line); gap:16px; }
.mobile-navigation .brand { gap:12px; min-height:48px; }
.mobile-navigation .brand-name { font-size:12px; letter-spacing:2px; }
.menu-close,.personal-header .menu-toggle { align-items:center; justify-content:center; gap:12px; min-width:100px; min-height:48px; padding:0 10px; border:0; border-radius:4px; color:var(--ink); background:transparent; font-size:14px; line-height:1; }
.menu-close { display:inline-flex; }
.menu-close:hover,.personal-header .menu-toggle:hover { background:#ffffff08; }
.mobile-navigation-links { display:flex; flex-direction:column; gap:4px; padding-block:clamp(32px,6vh,64px); }
.mobile-navigation-links a { align-self:flex-start; position:relative; min-height:52px; padding:5px 0; font:400 clamp(30px,5.5vw,44px)/1.4 var(--serif); letter-spacing:-.5px; color:#bfc3b8; }
.mobile-navigation-links a:hover { color:var(--ink); }
.mobile-navigation-links a[aria-current="page"] { color:var(--ink); text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:1px; text-underline-offset:9px; }
.mobile-language { display:flex; align-items:center; gap:16px; border-top:1px solid var(--line); padding-top:20px; margin-top:auto; font-size:14px; }
.mobile-language a { display:inline-flex; align-items:center; min-height:48px; color:#adb4a8; }
.mobile-language a[aria-current] { color:var(--ink); text-decoration:underline; text-underline-offset:6px; }
.mobile-language>span { color:#858d80; }
.mobile-navigation[open] .mobile-navigation-links { animation:menu-enter 160ms ease-out; }
@keyframes menu-enter { from { opacity:0; transform:translateY(6px); } to { opacity:1; transform:none; } }
@media(max-width:800px) {
  .personal-header nav { display:none; }
  .personal-header .menu-toggle { display:inline-flex; }
  .hero-personal { min-height:520px; padding:64px 0 72px; }
  .hero-personal .hero-copy { max-width:460px; }
  .hero-personal h1 { font-size:clamp(64px,10vw,80px); }
}
@media(max-width:600px) {
  .personal-header .brand,.mobile-navigation .brand { gap:12px; }
  .mobile-navigation .brand img { width:48px; height:44px; }
  .mobile-navigation .brand-name { font-size:11px; }
  .hero-personal { display:block; min-height:0; padding:42px 0 228px; }
  .hero-personal h1 { font-size:clamp(54px,15.5vw,72px); letter-spacing:-2px; margin-bottom:12px; }
  .hero-role { font-size:16px; }
  .hero-personal .hero-intro { font-size:16px; line-height:1.75; margin-top:20px; }
  .hero-personal .hero-actions { flex-direction:column; align-items:flex-start; gap:8px; margin-top:24px; }
  .hero-personal .hero-button { min-height:48px; padding:12px 18px; font-size:14px; }
  .hero-personal .hero-button-secondary { padding-inline:0; }
  .hero-personal .hero-photo { height:280px; object-position:75% 64%; mask-image:linear-gradient(to bottom,transparent,#000 30%,#000 86%,transparent); }
  .hero-personal::before { display:none; }
}
@media(prefers-reduced-motion:reduce) { .mobile-navigation[open] .mobile-navigation-links { animation:none; } }
@media print { .mobile-navigation { display:none !important; } }
@media(max-height:540px) {
  .mobile-navigation-links { padding-block:20px; gap:0; }
  .mobile-navigation-links a { font-size:28px; min-height:48px; }
}
/* Restored technology collection, using the original site's local logo assets. */
.technology-section { padding:56px 0 64px; border-top:1px solid var(--line); }
.technology-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:32px; margin-bottom:28px; }
.technology-heading .eyebrow { margin-bottom:14px; }
.technology-heading h2 { margin:0; }
.technology-heading>p { max-width:330px; margin:0; color:var(--muted); font-size:15px; line-height:1.7; }
.technology-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; padding:0; margin:0; list-style:none; }
.technology-card { min-width:0; padding:24px 20px; border:1px solid var(--line); border-radius:8px; background:#18201b; }
.technology-card img { display:block; width:40px; height:40px; object-fit:contain; margin-bottom:20px; }
.technology-card h3 { font-size:16px; line-height:1.4; margin:0 0 8px; }
.technology-card p { color:var(--muted); font-size:14px; line-height:1.6; margin:0; overflow-wrap:anywhere; }
@media(max-width:1000px) { .technology-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:600px) {
  .technology-section { padding:40px 0; }
  .technology-heading { display:block; margin-bottom:24px; }
  .technology-heading h2 { font-size:28px; }
  .technology-heading>p { font-size:16px; margin-top:16px; }
  .technology-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .technology-card { padding:20px 16px; }
  .technology-card p { font-size:14px; }
}
.technology-card img.technology-wordmark { width:104px; max-width:100%; height:40px; }
.legal-notice { border-left:2px solid var(--accent); padding:4px 20px; background:#1b241e; } .legal-document h1 { font-size:clamp(34px,5vw,52px); } .legal-document h2 { font-size:27px; }
