/*
Theme Name: Alphanumeric
Theme URI: https://az09.one
Author: Alphanumeric Capital LLC
Author URI: https://az09.one
Description: Alphanumeric Capital 官网自定义主题。基于品牌规范《The Emergence V3》构建：深藏青 / 金 / 象牙白配色，Cormorant Garamond 与 Lora 字体系统。轻量、无第三方页面构建器依赖，内容通过 WordPress 原生编辑器与自定义字段管理。
Version: 1.0.9
Requires at least: 6.4
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: alphanumeric
*/

/* ==========================================================================
   0. 设计令牌 Design Tokens
   ========================================================================== */
:root {
	--an-navy: #0C1626;
	--an-navy-soft: #1A2436;
	--an-gold: #C6A15B;
	--an-paper: #FAFAF7;
	--an-mist: #6B7687;
	--an-line: #DDD9D0;
	--an-white: #FFFFFF;

	--an-font-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
	--an-font-body: 'Lora', Georgia, 'Times New Roman', serif;
	--an-font-mono: 'IBM Plex Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

	--an-max-width: 1120px;
	--an-max-width-narrow: 760px;

	--an-space-1: 8px;
	--an-space-2: 16px;
	--an-space-3: 24px;
	--an-space-4: 40px;
	--an-space-5: 64px;
	--an-space-6: 96px;
	--an-space-7: 144px;

	--an-radius: 4px;
	--an-transition: 200ms ease;
}

/* ==========================================================================
   1. 重置 Reset
   ========================================================================== */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--an-paper);
	color: var(--an-navy-soft);
	font-family: var(--an-font-body);
	font-size: 17px;
	line-height: 1.75;
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; }
ul { list-style: none; margin: 0; padding: 0; }
h1, h2, h3, h4 { font-family: var(--an-font-display); font-weight: 600; line-height: 1.15; margin: 0; color: var(--an-navy); }
p { margin: 0 0 1.4em; }
p:last-child { margin-bottom: 0; }
button { font: inherit; background: none; border: 0; cursor: pointer; }
input, textarea { font: inherit; }

.screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
}
.skip-link.screen-reader-text:focus {
	position: fixed !important;
	top: 8px; left: 8px;
	width: auto; height: auto;
	clip: auto;
	background: var(--an-navy);
	color: var(--an-white);
	padding: 12px 20px;
	z-index: 10000;
	border-radius: var(--an-radius);
}

/* ==========================================================================
   2. 布局容器 Layout
   ========================================================================== */
.an-container {
	max-width: var(--an-max-width);
	margin-inline: auto;
	padding-inline: var(--an-space-3);
}
.an-container--narrow { max-width: var(--an-max-width-narrow); }

/* ==========================================================================
   3. 排版工具类 Typography Utilities
   ========================================================================== */
.an-eyebrow {
	font-family: var(--an-font-mono);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--an-gold);
	margin: 0 0 var(--an-space-2);
}
.an-eyebrow--center { text-align: center; }

/* 每个主页面顶部的小编号（如 "02 / 04"）——用编号而不是颜色/动效区分
   各页，呼应"字母数字"品牌本身就是有限编号的元素这一概念；颜色刻意比
   eyebrow 更安静（mist 灰），让视觉重点仍落在金色的 eyebrow 和标题上。 */
.an-page-index {
	font-family: var(--an-font-mono);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--an-mist);
	margin: 0 0 var(--an-space-1);
}

.an-headline {
	font-size: clamp(34px, 5vw, 56px);
	margin: 0 0 var(--an-space-3);
}
.an-headline__main,
.an-headline__accent { display: block; }
.an-headline__accent {
	font-style: italic;
	color: var(--an-gold);
	font-weight: 500;
}

/* ==========================================================================
   4. 页头 Header
   ========================================================================== */
.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(250, 250, 247, 0.92);
	backdrop-filter: saturate(140%) blur(8px);
	border-bottom: 1px solid var(--an-line);
}
.an-header__inner {
	display: flex;
	align-items: center;
	gap: var(--an-space-4);
	padding-block: 18px;
}
.site-branding { margin-right: auto; }
.site-logo img { height: 32px; width: auto; }
.custom-logo-link img { height: 32px; width: auto; }

.site-nav__list {
	display: flex;
	gap: var(--an-space-4);
	font-family: var(--an-font-mono);
	font-size: 13px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.site-nav__list a {
	position: relative;
	padding-bottom: 4px;
	transition: color var(--an-transition);
}
.site-nav__list a:hover,
.site-nav__list a:focus-visible { color: var(--an-gold); }
.site-nav__list .current-menu-item > a { color: var(--an-gold); }

.site-header__cta {
	font-family: var(--an-font-mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	border: 1px solid var(--an-navy);
	padding: 10px 18px;
	border-radius: var(--an-radius);
	white-space: nowrap;
	transition: background var(--an-transition), color var(--an-transition);
}
.site-header__cta:hover,
.site-header__cta:focus-visible {
	background: var(--an-navy);
	color: var(--an-paper);
}

.nav-toggle {
	display: none;
	flex-direction: column;
	gap: 5px;
	padding: 8px;
}
.nav-toggle__bar {
	width: 22px;
	height: 2px;
	background: var(--an-navy);
	transition: transform var(--an-transition), opacity var(--an-transition);
}
.nav-toggle[aria-expanded="true"] .nav-toggle__bar:first-child { transform: translateY(3.5px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .nav-toggle__bar:last-child { transform: translateY(-3.5px) rotate(-45deg); }

@media (max-width: 780px) {
	.site-header__cta { display: none; }
	.nav-toggle { display: inline-flex; margin-left: var(--an-space-2); }
	.site-nav {
		position: absolute;
		top: 100%; left: 0; right: 0;
		background: var(--an-paper);
		border-bottom: 1px solid var(--an-line);
		max-height: 0;
		overflow: hidden;
		transition: max-height var(--an-transition);
	}
	.site-nav.is-open { max-height: 400px; }
	.site-nav__list {
		flex-direction: column;
		gap: 0;
		padding: var(--an-space-2) var(--an-space-3) var(--an-space-4);
	}
	.site-nav__list li { border-bottom: 1px solid var(--an-line); }
	.site-nav__list a { display: block; padding: 14px 0; }
}

/* ==========================================================================
   5. 首页 · CEO 来信 Letter
   ========================================================================== */
.an-letter { padding-block: var(--an-space-5) var(--an-space-7); }

/* 两栏：左边信正文，右边头图（桌面端并排；窄屏自动堆叠，头图移到文字上方） */
.an-letter__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	column-gap: var(--an-space-6);
	align-items: start;
}
.an-letter__col-text { max-width: 640px; }
.an-letter__col-image {
	order: 2;
	position: sticky;
	top: calc(var(--an-space-6) + 56px);
}

.an-letter__hero-image { overflow: hidden; }
.an-letter__hero-image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: var(--an-radius);
}

@media (max-width: 900px) {
	.an-letter__grid { grid-template-columns: 1fr; row-gap: var(--an-space-5); }
	.an-letter__col-image { order: -1; position: static; max-width: 240px; }
}
@media (max-width: 560px) {
	.an-letter__col-image { max-width: 180px; }
}

.an-notice {
	font-family: var(--an-font-mono);
	font-size: 12px;
	color: var(--an-mist);
	background: #F1EEE6;
	border: 1px dashed var(--an-line);
	border-radius: var(--an-radius);
	padding: var(--an-space-2);
	margin-top: var(--an-space-3) !important;
}

.an-letter__mark { margin-bottom: var(--an-space-4); }
.an-letter__mark img { width: 96px; height: 96px; }

.an-letter__body { font-size: 18px; }
.an-letter__body p { margin-bottom: 1.5em; }
.an-letter__body strong { color: var(--an-navy); font-weight: 600; }
.an-letter__body em { font-family: var(--an-font-display); font-style: italic; font-size: 1.1em; }

/* "↓ More" 展开区（原生 <details>，无需 JS，键盘/屏幕阅读器可用） */
.an-more { margin-top: var(--an-space-2); }
.an-more__toggle {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-family: var(--an-font-mono);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--an-gold);
	cursor: pointer;
	list-style: none;
	user-select: none;
}
.an-more__toggle::-webkit-details-marker { display: none; }
.an-more__toggle:hover,
.an-more__toggle:focus-visible { color: var(--an-navy); }

/* 展开后，顶部这个"↓ More"按钮直接隐藏——收起的入口已经挪到内容读完之后
   （.an-more__close），顶部这个按钮留着只会卡在正文中间、打断阅读，没有
   实际作用。.an-more__label-less / an-more__toggle-icon 的翻转样式只在
   顶部按钮"可见"时才有意义，展开后按钮本身都不显示了，不需要再处理。 */
.an-more[open] > .an-more__toggle { display: none; }

.an-more__content { margin-top: var(--an-space-2); }
.an-more__content p:first-child { margin-top: 0; }

/* 展开内容读完之后、末尾的"↑ Less"收起按钮——样式跟顶部的展开按钮保持一致 */
.an-more__close {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-top: var(--an-space-3);
	padding: 0;
	border: 0;
	background: none;
	font-family: var(--an-font-mono);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--an-gold);
	cursor: pointer;
}
.an-more__close:hover,
.an-more__close:focus-visible { color: var(--an-navy); }

.an-letter__signature {
	margin-top: var(--an-space-5);
	padding-top: var(--an-space-4);
	border-top: 1px solid var(--an-line);
}
.an-letter__signature-img img { height: 64px; width: auto; margin-bottom: var(--an-space-1); }
.an-letter__signer-name { font-family: var(--an-font-display); font-size: 20px; font-weight: 600; color: var(--an-navy); }
.an-letter__signer-title {
	font-family: var(--an-font-mono);
	font-size: 12px;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--an-mist);
	margin-top: 4px;
}

/* ==========================================================================
   6. 通用内页 Page
   ========================================================================== */
.an-page { padding-block: var(--an-space-6) var(--an-space-6); }
.an-page__header { margin-bottom: var(--an-space-4); }
.an-page__body { font-size: 18px; }
.an-page__body p { margin-bottom: 1.5em; }

/* ==========================================================================
   7. 团队 Team（About 页）
   ========================================================================== */
.an-team { margin-top: var(--an-space-6); text-align: center; }
.an-team__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: var(--an-space-4);
	margin-top: var(--an-space-3);
	text-align: left;
}
.an-team__card {
	background: var(--an-white);
	border: 1px solid var(--an-line);
	border-radius: var(--an-radius);
	padding: var(--an-space-3);
}
.an-team__photo { margin-bottom: var(--an-space-2); }
.an-team__photo img { border-radius: var(--an-radius); aspect-ratio: 1 / 1; object-fit: cover; width: 100%; }
.an-team__name { font-size: 20px; margin-bottom: 2px; }
.an-team__role {
	font-family: var(--an-font-mono);
	font-size: 11px;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--an-gold);
	margin-bottom: var(--an-space-2);
}
.an-team__bio { color: var(--an-mist); font-size: 15px; }
.an-team__bio p:last-child { margin-bottom: 0; }

/* ==========================================================================
   8. 投资主题卡片 Portfolio Theme Cards
   ========================================================================== */
.an-theme-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: var(--an-space-3);
	margin-top: var(--an-space-3);
	margin-bottom: var(--an-space-6);
}
.an-theme-card {
	background: var(--an-navy);
	color: var(--an-paper);
	border-radius: var(--an-radius);
	padding: var(--an-space-4);
}
.an-theme-card__title {
	color: var(--an-white);
	font-size: 22px;
	margin-bottom: var(--an-space-2);
}
.an-theme-card__desc { color: #B7C0D1; font-size: 15px; }
.an-theme-card__desc p:last-child { margin-bottom: 0; }

/* ==========================================================================
   8b. 持股卡片 Holdings Cards（全资拥有并运营的公司——事实性披露，
   跟上面深色的"投资主题"卡片刻意用浅色区分开，避免读者把"愿景/偏好"
   和"已经拥有的公司"混为一谈）
   ========================================================================== */
.an-holding-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: var(--an-space-3);
	margin-top: var(--an-space-3);
	margin-bottom: var(--an-space-6);
}
.an-holding-card {
	background: var(--an-white);
	border: 1px solid #E4E1D8;
	border-radius: var(--an-radius);
	padding: var(--an-space-4);
}
.an-holding-card__tag {
	font-family: var(--an-font-mono);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--an-gold);
	margin: 0 0 var(--an-space-1);
}
.an-holding-card__title {
	color: var(--an-navy);
	font-size: 22px;
	margin-bottom: var(--an-space-2);
}
.an-holding-card__link {
	color: var(--an-navy);
	text-decoration: none;
	background-image: linear-gradient(var(--an-gold), var(--an-gold));
	background-repeat: no-repeat;
	background-position: 0 100%;
	background-size: 100% 1px;
}
.an-holding-card__link:hover,
.an-holding-card__link:focus-visible { color: var(--an-gold); }
.an-holding-card__desc { color: var(--an-mist); font-size: 15px; }
.an-holding-card__desc p:last-child { margin-bottom: 0; }

/* ==========================================================================
   9. 按钮与联系方式 Buttons / Contact
   ========================================================================== */
.an-btn {
	display: inline-block;
	font-family: var(--an-font-mono);
	font-size: 13px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	background: var(--an-navy);
	color: var(--an-paper);
	padding: 14px 28px;
	border-radius: var(--an-radius);
	transition: background var(--an-transition), transform var(--an-transition);
}
.an-btn:hover,
.an-btn:focus-visible { background: var(--an-gold); color: var(--an-navy); }

.an-cta-row { text-align: center; padding-block: var(--an-space-4); }

.an-contact-email { margin-top: var(--an-space-4); }
.an-contact-email a {
	font-family: var(--an-font-display);
	font-size: clamp(28px, 4vw, 40px);
	color: var(--an-navy);
	border-bottom: 2px solid var(--an-gold);
	transition: color var(--an-transition);
}
.an-contact-email a:hover,
.an-contact-email a:focus-visible { color: var(--an-gold); }

/* ==========================================================================
   10. 404
   ========================================================================== */
.an-404 { padding-block: var(--an-space-7); text-align: left; }

/* ==========================================================================
   11. 页脚 Footer
   ========================================================================== */
.site-footer {
	background: var(--an-navy);
	color: #B7C0D1;
	margin-top: var(--an-space-6);
}
.an-footer__grid {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr 1.2fr;
	gap: var(--an-space-4);
	padding-block: var(--an-space-6) var(--an-space-4);
}
.an-footer__brand img { height: 28px; width: auto; }
.an-footer__label {
	font-family: var(--an-font-mono);
	font-size: 11px;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--an-gold);
	margin-bottom: var(--an-space-2);
}
.an-footer__nav-list { display: flex; flex-direction: column; gap: 10px; }
.an-footer__nav-list a:hover,
.an-footer__nav-list a:focus-visible { color: var(--an-white); }
.an-footer__contact a { font-size: 16px; }
.an-footer__contact a:hover,
.an-footer__contact a:focus-visible { color: var(--an-white); }
.an-footer__social { display: flex; gap: var(--an-space-2); margin-top: var(--an-space-2); }
.an-footer__social a { color: #B7C0D1; transition: color var(--an-transition); }
.an-footer__social a:hover,
.an-footer__social a:focus-visible { color: var(--an-gold); }
.an-footer__about p { font-size: 14px; line-height: 1.7; color: #8896AB; }

.an-footer__bottom {
	border-top: 1px solid rgba(255,255,255,0.1);
	padding-block: var(--an-space-3);
	font-family: var(--an-font-mono);
	font-size: 12px;
	color: #8896AB;
}

@media (max-width: 900px) {
	.an-footer__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
	.an-footer__grid { grid-template-columns: 1fr; }
}

/* ==========================================================================
   12. 响应式细节 Responsive
   ========================================================================== */
@media (max-width: 560px) {
	body { font-size: 16px; }
	.an-letter, .an-page { padding-block: var(--an-space-5) var(--an-space-5); }
	.an-header__inner { padding-block: 14px; }
}

/* ==========================================================================
   13. 无障碍 Focus States
   ========================================================================== */
a:focus-visible,
button:focus-visible {
	outline: 2px solid var(--an-gold);
	outline-offset: 2px;
}
