/* Mobile layout, touch targets and safe areas shared by the home and project pages. */
@media(max-width:800px){
  html{scroll-padding-top:calc(76px + env(safe-area-inset-top,0px))}
  .content-section,#travel{scroll-margin-top:12px}
  .site-nav .nav-shell{width:auto;margin-left:max(18px,env(safe-area-inset-left,0px));margin-right:max(18px,env(safe-area-inset-right,0px));padding:calc(9px + env(safe-area-inset-top,0px)) 0 9px}
  .site-nav .icon-button{min-width:44px;min-height:44px;padding:10px;font-size:12px}.nav-actions{gap:2px}.language-button #lang-chevron{width:10px}.site-nav .brand{min-height:44px}
  .site-nav .mobile-links{margin:4px 12px 12px;padding:8px;max-height:calc(100dvh - 92px - env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior:contain;border-radius:16px;box-shadow:0 15px 40px #26344924}
  .site-nav .mobile-links .nav-link{font-size:15px;min-height:46px;padding:10px 14px;display:flex;align-items:center}.language-menu{width:136px;max-height:calc(100dvh - 100px);overflow-y:auto}.lang-switch-btn{min-height:44px;font-size:14px}
  .hero-section.seascape-cover{height:100svh;min-height:560px;max-height:none}.seascape-cover .hero-copy{top:clamp(125px,20svh,205px)}
  .seascape-bottom{bottom:max(24px,calc(env(safe-area-inset-bottom,0px) + 16px));left:max(20px,env(safe-area-inset-left,0px));right:max(20px,env(safe-area-inset-right,0px))}.seascape-scroll{min-width:64px;min-height:44px;justify-content:center}
  .section-wrap,.travel-wrap{width:auto;margin-left:max(20px,env(safe-area-inset-left,0px));margin-right:max(20px,env(safe-area-inset-right,0px))}
  .section-kicker,.travel-eyebrow{font-size:10px;letter-spacing:.12em}.section-summary,.travel-intro,.section-note{font-size:13px;line-height:1.85}.section-number{font-size:36px}
  .skill-tag{font-size:12px;padding:8px 11px}.skill-card .text-link{min-height:44px;padding-top:14px;font-size:13px}.learning-card .muted,.now-project-card .muted,.project-body .muted{font-size:14px;line-height:1.85}.status-label,.learning-card .status-label{font-size:11px;padding:4px 10px}.card-index{display:none}
  .project-links{gap:8px;margin-top:18px;padding-top:12px}.project-links .text-link,.project-launch{font-size:13px;min-height:44px;display:inline-flex;align-items:center}.project-art-meta{font-size:10px}
  .chart-scroll{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.chart-legend{font-size:9px;letter-spacing:.02em;gap:12px}.chart-scroll #githubChart{min-width:620px}
  .match-tile-title{font-size:24px}.match-tile-meta{font-size:10px;letter-spacing:0}.match-stat-grid span,.match-result-grid span,.match-total>span{font-size:11px}.match-result-grid strong{font-size:19px}
  .travel-toolbar{align-items:stretch}.travel-filters{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;width:100%}.travel-filters button{min-height:44px;padding:6px 3px;font-size:12px}.travel-count-label{font-size:11px}.travel-note{font-size:12px;line-height:1.8}.travel-total span{font-size:12px}
  .timeline-node time{font-size:12px}.timeline-node h4{font-size:16px}.contact-label strong{font-size:15px}.contact-label small{font-size:12px}.contact-card{min-height:76px}.site-footer{font-size:11px;line-height:1.8;padding-bottom:max(28px,env(safe-area-inset-bottom,0px));gap:14px}.site-footer>div{row-gap:8px}.site-footer a{min-height:44px;display:inline-flex;align-items:center}#visitWrapper{font-size:11px}
  .ahead-dialog{width:calc(100% - 32px);max-height:calc(100dvh - 32px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));padding:22px;overscroll-behavior:contain}.ahead-dialog p{font-size:14px;line-height:1.9}.ahead-dialog-close{min-width:72px;min-height:44px;font-size:13px}.ahead-dialog h2{font-size:25px}.ahead-corner{min-height:44px;display:flex;align-items:center}
  /* Project detail pages. */
  .wrap{padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.wrap .top{padding:calc(12px + env(safe-area-inset-top,0px)) 0 12px;gap:12px}.wrap .brand,.wrap .back{min-height:44px;display:inline-flex;align-items:center}.wrap .back{font-size:12px}.wrap .hero{padding:36px 0;gap:24px;grid-template-columns:1fr}.wrap .hero h1{font-size:clamp(29px,8.5vw,38px);overflow-wrap:anywhere}.wrap .lead,.wrap .section>p{font-size:15px;line-height:1.95}.wrap .card p{font-size:14px;line-height:1.9}.wrap .grid{grid-template-columns:1fr}.wrap .btn,.wrap .project-nav a{font-size:13px;min-height:44px;display:inline-flex;align-items:center}.wrap .tags span{font-size:12px}.wrap .diagram{padding:24px}.wrap .step{font-size:13px}.wrap .foot{font-size:11px;padding-bottom:max(28px,env(safe-area-inset-bottom,0px))}.wrap .project-nav{gap:10px;align-items:center}
}
@media(max-width:600px){
  .brand-logo-window{width:118px}.seascape-cover .hero-slogan{font-size:clamp(31px,9.5vw,43px);line-height:1.6;letter-spacing:.07em}.seascape-cover .hero-eyebrow{font-size:9px;letter-spacing:.17em;margin-bottom:22px}
  .seascape-cover .hero-slogan{overflow-wrap:anywhere}.signature-cn{font-size:25px}.signature-en{font-size:15px}.corner-signature small{font-size:7px}.seascape-scroll{font-size:7px}
  .coastal-content .content-section{padding-top:36px;padding-bottom:36px}.coastal-content .compact-section{padding-top:20px;padding-bottom:20px}.section-heading h2,.section-heading h3,.travel-top h2{font-size:25px;line-height:1.45}.section-heading{margin-bottom:20px;gap:14px}
  .skill-card,.learning-card{padding:22px}.skill-card h3{font-size:21px}.learning-card-top{margin-bottom:14px}.learning-card h3{font-size:21px}.learning-card .muted{min-height:0;margin-top:9px}.now-project-card{padding:24px 22px 78px}.now-project-card h3{font-size:24px}.ahead-corner{bottom:16px;right:22px}
  .project-art{height:155px;min-height:155px}.project-art>svg{width:54px;height:54px}.project-body{padding:22px}.project-body h3{font-size:23px}.project-links{flex-wrap:wrap}
  .travel-top{gap:12px}.travel-intro{max-width:none}.travel-total strong{font-size:37px}.travel-toolbar{padding:12px}.travel-cloud{margin-left:4px;margin-right:4px}.contact-panel{padding:23px 16px}.contact-card{padding:15px 13px}
}
@media(max-width:359px){.section-wrap,.travel-wrap{margin-left:16px;margin-right:16px}.brand-logo-window{width:106px}.site-nav .nav-shell{margin-left:14px;margin-right:14px}.language-button{gap:4px}.language-button #lang-chevron{display:none}.travel-filters button{font-size:11px}.skill-card,.learning-card,.project-body{padding:20px}.match-tile{padding:15px}.match-tile-meta{font-size:9px}.contact-label small{font-size:11px}.wrap .project-nav{flex-direction:column;align-items:flex-start}}
@media(max-height:500px) and (orientation:landscape) and (max-width:1000px){.hero-section.seascape-cover{height:auto;min-height:520px}.seascape-cover .hero-copy{top:120px}.seascape-cover .hero-slogan{font-size:36px}.seascape-cover .hero-slogan>span{display:inline}.seascape-bottom{bottom:22px}}
@media(hover:none){.skill-card:hover,.project-card:hover,.match-tile:hover,.contact-card:hover{transform:none}}
