/* Mobile uses native touch momentum and generous, readable controls. */
@media (max-width: 760px) {
  html {scroll-padding-top:92px;-webkit-text-size-adjust:100%;text-size-adjust:100%;}
  .wrap {width:calc(100% - 40px);}
  .hero-grid,.about-grid,.expertise-grid,.journey-layout,.contact-layout {grid-template-columns:minmax(0,1fr);}
  .hero-copy,.about-copy,.expertise-grid>div,.journey-story,.terminal-wrap,.contact-copy {min-width:0;}
  .header {width:calc(100% - 24px);height:66px;top:8px;margin-top:10px;padding:0 16px;border-radius:16px;}
  .brand {font-size:36px;}
  .menu {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;padding:12px;background:#ffffff06;border:1px solid #ffffff24;border-radius:12px;cursor:pointer;z-index:12;}
  .menu span {display:block;width:18px;height:1px;background:#e1e7f0;transition:transform .2s;}
  .menu[aria-expanded=true] span:first-child {transform:translateY(3.5px) rotate(45deg);}
  .menu[aria-expanded=true] span:last-child {transform:translateY(-3.5px) rotate(-45deg);}
  #navigation {display:none;position:absolute;left:0;right:0;top:73px;max-height:calc(100dvh - 105px);overflow-y:auto;padding:12px;border:1px solid #ffffff27;border-radius:15px;background:#13161df5;backdrop-filter:blur(18px);box-shadow:0 16px 40px #0006;gap:4px;align-items:stretch;}
  #navigation.open {display:flex;flex-direction:column;}
  #navigation .bubble-link {padding:15px;border-radius:10px;font-size:15px;min-height:48px;}
  #navigation .bubble-link.active {background:#ffffff08;}
  #navigation .nav-contact {margin:4px 0 0;padding:14px 15px;border-radius:10px;font-size:15px;min-height:48px;}
  #navigation .nav-contact span {float:right;}
  .nav-bubble-position {display:none;}
  .hero {padding-top:28px;}
  #home .hero-top .eyebrow {font-size:15px;}
  .hero-index {display:none;}
  .hero-grid {gap:28px;padding:32px 0 25px;}
  h1 {font-size:clamp(45px,10.8vw,69px);line-height:1.07;letter-spacing:-2.8px;margin-bottom:22px;}
  h1 .serif {letter-spacing:-2.7px;}
  .heading-star {font-size:27px;right:4px;top:-18px;}
  .hero-copy>p {font-size:15px;line-height:1.8;max-width:440px;}
  .hero-actions {flex-direction:column;align-items:stretch;gap:17px;margin-top:25px;max-width:440px;}
  .hero-actions .button {min-height:49px;font-size:14px;padding:13px 19px;}
  .hero-actions .text-link {align-self:flex-start;font-size:13px;min-height:36px;align-items:center;}
  .hero-art {height:clamp(290px,83vw,380px);max-width:440px;border-radius:20px;transform:none;}
  .hero-art:hover {transform:none;}
  .identity {padding:14px;border-radius:12px;left:12px;right:12px;bottom:12px;gap:12px;}
  .identity strong {font-size:14px;}
  .identity div>span {font-size:10px;}
  .hero-bottom {gap:12px;}
  .hero-bottom>.mono {font-size:8px;line-height:1.8;max-width:155px;}
  .scroll-link {font-size:8px;white-space:nowrap;}
  .ticker {padding-block:16px;}
  .ticker>div {justify-content:flex-start;font-size:11px;gap:27px;padding-inline:20px;}
  .section {padding-block:48px;}
  .section-top {margin-bottom:24px;}
  .section-top>.mono {display:none;}
  .section-top .eyebrow {font-size:10px;letter-spacing:1px;}
  h2 {font-size:clamp(31px,7.8vw,42px);letter-spacing:-1.4px;line-height:1.15;}
  .section-heading {display:block;margin-bottom:25px;}
  .section-heading>p {font-size:13px;line-height:1.8;margin-top:19px;}
  .desktop-br {display:none;}
  .project-filters {gap:7px;margin:0 0 21px;}
  .project-filters button {min-height:42px;padding:10px 13px;font-size:12px;}
  .work-grid.text-project-grid {grid-template-columns:minmax(0,1fr);gap:17px;}
  .text-project-grid .text-project-card {padding:22px 21px 0;border-radius:17px;backdrop-filter:none;-webkit-backdrop-filter:none;}
  .project-card-top {margin-bottom:20px;}
  .project-number {font-size:10px;}
  .project-state {font-size:11px;padding:6px 10px;gap:8px;}
  .project-state i {width:6px;height:6px;}
  .project-kind {font-size:10px;letter-spacing:.4px;}
  .text-project-card h3 {font-size:30px;margin-block:9px 15px;overflow-wrap:break-word;}
  .text-project-grid .text-project-card>p {font-size:14px;line-height:1.75;}
  .project-highlights {gap:9px;}
  .project-highlights li {font-size:12px;line-height:1.6;}
  .project-highlights li::before {top:8px;}
  .text-project-card .tags span {font-size:10px;padding:5px 8px;}
  .project-detail {min-height:52px;font-size:14px;padding-block:16px;}
  .work-card:hover {transform:none;}
  .more-builds {display:block;margin-top:29px;}
  .more-builds>div {margin-top:14px;gap:8px;}
  .more-builds button {min-height:44px;font-size:11px;padding:11px 13px;}
  .about-grid {padding:25px 22px;gap:29px;border-radius:18px;}
  .about-grid h2 {font-size:33px;}
  .about-signature {margin-top:24px;font-size:clamp(24px,6vw,36px);letter-spacing:-.04em;}
  .about-signature span {font-size:20px;margin-left:12px;}
  .about-copy .lead {font-size:18px;}
  .about-copy p {font-size:14px;}
  .about-copy .text-link {font-size:13px;min-height:38px;align-items:center;}
  .stats {grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;}
  .stats>div,.stats>div:first-child {min-width:0;padding:19px 12px;border-radius:12px;backdrop-filter:none;}
  .stats strong {font-size:36px;letter-spacing:-2px;}
  .stats strong span {font-size:26px;}
  .stats>div>span {font-size:10px;line-height:1.6;max-width:none;}
  #expertise {padding-block:43px;}
  #expertise .expertise-grid {gap:27px;}
  #expertise h2 {font-size:32px;}
  #expertise .section-description {font-size:13px;line-height:1.8;}
  #expertise .toolkit-caption .mono {font-size:9px;}
  #expertise .skill-tags.language-grid {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  #expertise .language-grid>span.language-card {min-height:96px;padding:15px;}
  #expertise .language-card strong {font-size:13px;}
  #expertise .language-card .language-use {font-size:10px;}
  #expertise .discord-expertise {gap:10px;padding:15px 12px;align-items:center;}
  #expertise .discord-expertise>div {min-width:0;}
  #expertise .discord-expertise .mono {font-size:7px;letter-spacing:.7px;}
  #expertise .discord-expertise h3 {font-size:13px;line-height:1.4;}
  #expertise .discord-expertise p {font-size:10px;line-height:1.7;}
  .discord-expertise>a {min-width:40px;min-height:44px;border-radius:9px;}
  #expertise .direction {padding:25px 22px;}
  #expertise .direction h3 {font-size:19px;}
  #expertise .direction p {font-size:13px;line-height:1.8;}
  #expertise .direction .mono {font-size:9px;}
  .journey-layout {gap:31px;}
  .journey-story h2 {font-size:33px;}
  .journey-intro {font-size:13px;}
  .build-journey h3 {font-size:17px;}
  .build-journey p {font-size:13px;}
  .terminal-caption .mono {font-size:8px;letter-spacing:.8px;}
  .terminal-titlebar {font-size:10px;padding:14px;}
  .terminal-output {height:250px;padding:18px 16px;font-size:12px;line-height:1.8;}
  .terminal-form {padding:10px 12px;gap:7px;}
  .terminal-form label {font-size:11px;}
  .terminal-form input {font-size:16px;min-height:44px;}
  .terminal-form button {width:40px;height:44px;font-size:20px;}
  .terminal-shortcuts {gap:7px;}
  .terminal-shortcuts button {font-size:11px;min-height:40px;padding:10px;}
  .terminal-footnote {font-size:10px;line-height:1.7;}
  .terminal-links a {min-height:36px;display:inline-flex;align-items:center;}
  .contact-section {padding-block:47px;}
  .contact-layout {gap:28px;}
  .contact-copy h2 {font-size:clamp(44px,11vw,60px);letter-spacing:-2px;}
  .contact-copy>p {font-size:14px;line-height:1.8;}
  .social-widgets {max-width:none;gap:12px;}
  .social-widget {padding:18px 16px;gap:13px;border-radius:16px;}
  .social-widget:hover {transform:none;}
  .social-logo {width:47px;height:47px;border-radius:12px;}
  .social-platform {font-size:9px;}
  .social-info strong {font-size:15px;overflow-wrap:anywhere;}
  .social-prompt {font-size:11px;line-height:1.5;}
  footer {flex-wrap:wrap;gap:18px;padding-block:27px;padding-bottom:calc(27px + env(safe-area-inset-bottom));}
  footer>span {order:3;width:100%;}
  footer .back-top {margin-left:auto;min-height:40px;display:flex;align-items:center;font-size:9px;}
  .footer-brand {font-size:16px;}
  #project-dialog {width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:39px 23px 25px;border-radius:18px;}
  #project-dialog h2 {font-size:29px;overflow-wrap:anywhere;}
  #project-dialog p,#project-dialog li {font-size:14px;line-height:1.8;}
  .dialog-close {top:7px;right:9px;min-width:44px;min-height:44px;}
  #dialog-action {font-size:13px;min-height:48px;}
}
@media (max-width:360px) {
  .wrap {width:calc(100% - 32px);}
  h1 {font-size:43px;}
  .hero-bottom>.mono {max-width:137px;font-size:7px;}
  .scroll-link {font-size:7px;}
  .social-widget {padding:16px 13px;gap:11px;}
  .social-info strong {font-size:14px;}
  .social-prompt {font-size:10px;}
  .terminal-caption .mono {max-width:180px;line-height:1.6;}
  .terminal-titlebar {font-size:9px;}
}
@media (max-width:760px) and (orientation:landscape) {
  #navigation {max-height:calc(100dvh - 100px);}
  #project-dialog {max-height:calc(100dvh - 16px);}
}
