﻿/* ---------- Core reset & base ---------- */
html { box-sizing: border-box; -ms-text-size-adjust:100%; -webkit-text-size-adjust:100% }
*, *::before, *::after { box-sizing: inherit }
body { margin: 0; font-family: Verdana, sans-serif; font-size: 15px; line-height: 1.5; overflow-x: hidden }

h1 { font-size: 36px } h2 { font-size: 30px } h3 { font-size: 24px }
h4 { font-size: 20px } h5 { font-size: 18px } h6 { font-size: 16px }
h1, h2, h3, h4, h5, h6 { font-family: "Segoe UI", Arial, sans-serif; font-weight: 400; margin: 10px 0 }

a, a:visited, a:hover, a:focus, a:active {
  color: #1772d0 !important;
  text-decoration: none;
  background-color: transparent;
  outline: none;
}

b, strong { font-weight: bolder }
img { border-style: none; vertical-align: middle }

/* ---------- Layout containers ---------- */
.stone-content { margin-left: auto; margin-right: auto; max-width: 980px }
.stone-main { transition: margin-left .4s }

/* ---------- Grid (float-based) ---------- */
.stone-container { padding: 0.01em 16px }
.stone-row::before, .stone-row::after,
.stone-container::before, .stone-container::after { content:""; display: table; clear: both }

.stone-col { float: left; width: 100% }
/* breakpoints actually used by the page */
@media (min-width:601px){
  .stone-col.m8  { width: 66.66666% }
  .stone-col.m12 { width: 100% }
}
@media (min-width:993px){
  .stone-col.l4 { width: 33.33333% }
  .stone-col.l8 { width: 66.66666% }
}

/* ---------- Utilities actually used ---------- */
.stone-center  { text-align: center !important }
.stone-left { text-align: left !important }

.stone-card  { box-shadow: 0 2px 5px rgba(0,0,0,0.16), 0 2px 10px rgba(0,0,0,0.12) }
.stone-round { border-radius: 4px }
.stone-light-grey { background-color: #f1f1f1 !important; color: #000 !important }

.stone-padding-small { padding: 4px 8px !important }
.stone-padding       { padding: 8px 16px !important }
.stone-padding-16    { padding-top: 16px !important; padding-bottom: 16px !important }
.stone-padding-24    { padding-top: 24px !important; padding-bottom: 24px !important }

.stone-margin-top { margin-top: 16px !important }

.stone-image { max-width: 100%; height: auto }

/* small responsive tweak you rely on elsewhere */
@media (max-width:992px){
  .stone-main { margin-left: 0 !important; margin-right: 0 !important }
}

/* Home: mobile column layout + move portrait above text */
@media (max-width:600px){
  #home .stone-row {
    display: flex;
    flex-direction: column;
  }
  #home .portrait-mobile-first {
    order: -1;
  }
  #home .stone-row .stone-col {
    float: none;
    width: 100%;
  }
}


#home .quote-card{
  box-sizing: border-box;
  width: 100%;
  max-width: 47ch;     /* 想更窄就调小，比如 40ch/38ch 或 520px */
  margin: 12px 0 0;    /* ← 左对齐；不要用 auto 否则会居中 */
  padding: 14px 18px;
  border-radius: 0px;
}
#home .quote-card p { margin: 0; }
/* 手机端全宽展示 */
@media (max-width:600px){
  #home .quote-card{ max-width: 100%; }
}

/* 各区块列表：去掉默认左外边距，缩小左内边距 */
#education ul,
#academic ul,
#profession ul,
#publication ul,
#facts ul {
  margin-left: 0;          /* 取消 UA 默认外边距 */
  padding-left: 1.1rem;    /* 从 ~40px 改为更紧的 ~18px；可调 1.0–1.4rem */
  list-style-position: outside;
}

.stone-container:has(> h2:first-child) { padding-top: 0; }