/* AIP Platform — homepage (page 3826) styling, reproduced 1:1 from
 * design/mockups/D-combined.html + tokens.css. Everything is scoped under
 * .aip-home so it never leaks into the theme header/footer or other pages.
 * Header & footer remain theme-owned. */

.aip-home {
	/* ----- design tokens (from tokens.css, scoped) ----- */
	--surface: oklch(0.992 0.004 90);
	--paper:   oklch(0.975 0.008 88);
	--paper-2: oklch(0.945 0.014 86);
	--paper-3: oklch(0.905 0.020 84);
	--paper-4: oklch(0.855 0.030 83);
	--line:      oklch(0.850 0.022 82);
	--line-soft: oklch(0.900 0.018 84);
	--ink:      oklch(0.27 0.012 64);
	--ink-soft: oklch(0.46 0.016 62);
	--bark:  oklch(0.40 0.034 68);
	--clay:  oklch(0.60 0.045 62);
	--mist-surface: oklch(0.86 0.020 158);
	--mist:         oklch(0.77 0.028 160);
	--mist-ink:     oklch(0.585 0.040 160);
	--gold:        oklch(0.655 0.078 80);
	--gold-bright: oklch(0.740 0.078 82);
	--gold-deep:   oklch(0.525 0.066 79);
	--gold-hairline: linear-gradient(90deg, transparent, var(--gold-deep) 16%, var(--gold-bright) 50%, var(--gold-deep) 84%, transparent);
	--gold-hairline-v: linear-gradient(180deg, transparent, var(--gold-deep) 16%, var(--gold-bright) 50%, var(--gold-deep) 84%, transparent);
	--seal-deep:  oklch(0.36 0.100 29);
	--seal:       oklch(0.42 0.115 30);
	--seal-bright:oklch(0.475 0.125 31);
	--seal-glow:  oklch(0.535 0.135 32);
	--on-dark: oklch(0.945 0.016 86);
	--shadow-sm: 0 1px 2px rgba(72,54,32,.07), 0 2px 6px rgba(72,54,32,.05);
	--shadow-md: 0 4px 12px rgba(72,54,32,.09), 0 14px 30px rgba(72,54,32,.07);
	--shadow-lg: 0 10px 26px rgba(72,54,32,.11), 0 26px 64px rgba(72,54,32,.10);
	--shadow-seal: 0 6px 22px rgba(122,42,36,.20);
	--grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)' opacity='0.05'/%3E%3C/svg%3E");
	--font-display: "Noto Serif TC", "Source Han Serif TC", "Songti TC", serif;
	--font-body: "Noto Sans TC", "PingFang TC", system-ui, sans-serif;
	--font-en-display: "Playfair Display", Georgia, serif;
	--font-en-body: "Source Sans 3", system-ui, sans-serif;
	--fs-display: clamp(2.65rem, 5.4vw, 4.05rem);
	--fs-h1: clamp(2.1rem, 3.7vw, 2.9rem);
	--fs-h2: clamp(1.7rem, 2.7vw, 2.2rem);
	--fs-body: 1.15rem;
	--fs-small: 0.95rem;
	--sp-xs: 4px; --sp-sm: 8px; --sp-md: 16px; --sp-lg: 24px; --sp-xl: 40px;
	--sp-section: 96px; --sp-air: 120px;
	--r-sm: 4px; --r-md: 8px; --r-lg: 12px;
	--maxw: 1200px;
	--ease: cubic-bezier(0.22, 1, 0.36, 1);
	--dur-fast: 240ms; --dur: 420ms; --dur-slow: 600ms;
	--sp-d: 108px;

	--gua-wash: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cg fill='none' stroke='%238a6d3b' stroke-width='3' stroke-linecap='round'%3E%3Cline x1='30' y1='34' x2='150' y2='34'/%3E%3Cline x1='30' y1='52' x2='72' y2='52'/%3E%3Cline x1='108' y1='52' x2='150' y2='52'/%3E%3Cline x1='30' y1='70' x2='150' y2='70'/%3E%3Cline x1='30' y1='118' x2='72' y2='118'/%3E%3Cline x1='108' y1='118' x2='150' y2='118'/%3E%3Cline x1='30' y1='136' x2='150' y2='136'/%3E%3Cline x1='30' y1='154' x2='72' y2='154'/%3E%3Cline x1='108' y1='154' x2='150' y2='154'/%3E%3C/g%3E%3C/svg%3E");
	--torn: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='14' viewBox='0 0 180 14'%3E%3Cpath d='M0 14 V6 C12 9 20 2 33 5 C44 7 52 1 64 4 C76 7 84 2 97 5 C108 8 117 2 129 5 C141 8 150 3 162 5 C170 6 175 9 180 6 V14 Z' fill='%23000'/%3E%3C/svg%3E");

	/* Full-bleed: with body.aip-bleed neutralizing .arden-main's box/gutter,
	 * 100% already spans the viewport — no 100vw (which would add the scrollbar
	 * width and cause horizontal overflow / 跑版). */
	width: 100%;
	max-width: 100%;
	margin-inline: 0;
	background-color: var(--paper);
	color: var(--ink);
	font-family: var(--font-body);
	font-size: var(--fs-body);
	line-height: 1.75;
	text-align: left;
}

.aip-home * { box-sizing: border-box; }
.aip-home h1, .aip-home h2, .aip-home h3, .aip-home h4 { font-family: var(--font-display); color: var(--ink); line-height: 1.2; font-weight: 700; margin: 0; }
.aip-home h2 { font-size: var(--fs-h2); }
.aip-home p { margin: 0 0 1em; }
.aip-home a { color: var(--seal); text-decoration: none; }
.aip-home img { display: block; max-width: 100%; }

.aip-home .wrap { max-width: var(--maxw); margin-inline: auto; padding-inline: var(--sp-lg); }
.aip-home section { padding-block: var(--sp-d); position: relative; }
.aip-home .zone-paper { background: var(--paper); }
.aip-home .zone-paper2 { background: var(--paper-2); }
.aip-home .zone-paper3 { background: var(--paper-3); }

.aip-home .overline { font-family: var(--font-body); font-size: var(--fs-small); letter-spacing: 0.22em; text-transform: uppercase; color: var(--clay); font-weight: 600; }
.aip-home .en-script { font-family: var(--font-en-display); font-style: italic; color: var(--clay); }
.aip-home .aip-initials span,
.aip-home .aip-acronym {
	color: var(--seal);
	font-weight: 900;
	letter-spacing: .08em;
	text-shadow: 0 1px 0 color-mix(in srgb, var(--gold) 28%, transparent);
}
.aip-home .aip-initials span {
	font-size: 1.55em;
	line-height: .85;
}
.aip-home .aip-acronym {
	font-size: 1.18em;
}
.aip-home .rule-gold { height: 1px; border: 0; background: var(--gold-hairline); }

.aip-home .btn { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-body); font-size: 1rem; font-weight: 600; padding: 13px 30px; border-radius: var(--r-sm); cursor: pointer; transition: background var(--dur) var(--ease), color var(--dur) var(--ease), transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease); border: 1px solid transparent; }
.aip-home .btn-primary { background: var(--seal); color: var(--on-dark); box-shadow: var(--shadow-sm); }
.aip-home .btn-primary:hover { background: var(--seal-bright); transform: translateY(-1px); box-shadow: var(--shadow-seal); }
.aip-home .btn-ghost { background: transparent; color: var(--bark); border-color: var(--bark); }
.aip-home .btn-ghost:hover { background: var(--bark); color: var(--on-dark); }

.aip-home .seal-chip { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 6px; background: var(--seal); color: var(--on-dark); font-family: var(--font-display); font-weight: 700; font-size: 1.1rem; box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--gold-bright) 70%, transparent), 0 1px 0 rgba(0,0,0,.12); }

.aip-home .ph { position: relative; background: repeating-linear-gradient(135deg, var(--paper-2), var(--paper-2) 12px, var(--paper-3) 12px, var(--paper-3) 24px); display: grid; place-items: center; color: var(--ink-soft); text-align: center; border: 1px dashed var(--clay); border-radius: var(--r-md); }
.aip-home .ph > span { font-size: var(--fs-small); letter-spacing: .04em; padding: 6px 12px; background: color-mix(in srgb, var(--paper) 80%, transparent); border-radius: 4px; }

@media (prefers-reduced-motion: no-preference) {
	.aip-home .reveal { opacity: 1; transform: none; transition: opacity .7s var(--ease), transform .7s var(--ease); }
	.aip-home .reveal.in { opacity: 1; transform: none; }
}

/* hexgrain decorative wash */
.aip-home .hexgrain { position: relative; isolation: isolate; }
.aip-home .hexgrain > .wrap, .aip-home .hexgrain > .inner { position: relative; z-index: 1; }
.aip-home .hexgrain::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background-image: var(--gua-wash); background-repeat: repeat; background-position: center top; background-size: 200px auto; opacity: .055; mix-blend-mode: multiply; }

/* seam */
.aip-home .seam { height: 0; position: relative; z-index: 3; }
.aip-home .seam::before { content:""; position:absolute; left:8%; right:8%; top:0; height:1px; background: var(--gold-hairline); opacity:.7; }
.aip-home .seam::after { content:""; position:absolute; left:8%; right:8%; top:-6px; height:7px; background: color-mix(in oklch, var(--gold) 30%, transparent); -webkit-mask: var(--torn) repeat-x top center / 180px 7px; mask: var(--torn) repeat-x top center / 180px 7px; opacity:.5; }

/* HERO */
.aip-home .hero-a { position: relative; text-align: center; overflow: hidden; padding: clamp(84px,12vw,168px) 0 clamp(72px,9vw,128px); isolation: isolate; }
.aip-home .hero-a::before { content:""; position:absolute; inset:-10% -5% 0; z-index:0; pointer-events:none; background: radial-gradient(58% 42% at 50% -6%, color-mix(in srgb, var(--bark) 26%, transparent), transparent 60%), radial-gradient(40% 36% at 84% 22%, color-mix(in srgb, var(--clay) 32%, transparent), transparent 62%), radial-gradient(46% 44% at 14% 30%, color-mix(in srgb, var(--gold) 22%, transparent), transparent 64%), radial-gradient(52% 50% at 30% 96%, color-mix(in srgb, var(--mist-ink) 20%, transparent), transparent 66%), radial-gradient(40% 40% at 78% 88%, color-mix(in srgb, var(--seal) 9%, transparent), transparent 64%); filter: saturate(1.05); }
.aip-home .hero-art { position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.aip-home .hero-art img { width:100%; height:100%; object-fit:cover; object-position:center 30%; opacity:.5; mix-blend-mode:multiply; -webkit-mask-image: radial-gradient(120% 90% at 50% 18%, #000 38%, transparent 78%); mask-image: radial-gradient(120% 90% at 50% 18%, #000 38%, transparent 78%); }
.aip-home .hero-a .inner { position: relative; z-index: 2; max-width: 920px; margin-inline: auto; padding-inline: var(--sp-lg); }
.aip-home .hero-a .en-script { font-size: 1.15rem; letter-spacing:.04em; }
.aip-home .hero-a h1 { font-size: var(--fs-display); font-weight: 900; letter-spacing: .03em; margin: var(--sp-md) 0 var(--sp-lg); line-height: 1.3; }
.aip-home .hero-a h1 .accent { color: var(--seal); position: relative; white-space: nowrap; }
.aip-home .hero-a h1 .accent::after { content:""; position:absolute; left:6%; right:6%; bottom:-.14em; height:2px; background: var(--gold-hairline); opacity:.9; }
.aip-home .hero-a .lead { font-size: 1.2rem; color: var(--ink-soft); max-width: 30em; margin: 0 auto var(--sp-xl); }
.aip-home .hero-a .ctas { display: flex; gap: var(--sp-md); justify-content: center; flex-wrap: wrap; }
.aip-home .hero-colophon { position: absolute; z-index: 2; top: clamp(96px, 13vw, 188px); right: clamp(14px, 4vw, 56px); writing-mode: vertical-rl; text-orientation: upright; font-family: var(--font-display); font-weight: 700; font-size: clamp(.95rem, 1.5vw, 1.18rem); letter-spacing: .42em; color: var(--bark); line-height: 1.05; padding: 18px 10px; display:flex; align-items:center; gap: 16px; }
.aip-home .hero-colophon::before { content:""; width:1px; align-self:stretch; background: var(--gold-hairline-v); opacity:.85; }
.aip-home .hero-colophon .seal-ofuda { writing-mode: vertical-rl; align-self:center; margin-top: 4px; background: var(--seal); color: var(--on-dark); font-size: .82rem; letter-spacing:.3em; padding: 12px 6px; border-radius: 4px; box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--gold-bright) 65%, transparent), var(--shadow-seal); }
.aip-home .hero-colophon .colo-lines { writing-mode: horizontal-tb; display:flex; flex-direction: row-reverse; gap: .5em; }
.aip-home .hero-colophon .colo-lines > span { writing-mode: vertical-rl; text-orientation: upright; white-space: nowrap; }
@media (max-width: 980px){ .aip-home .hero-colophon{ display:none; } }

/* sec-head-d */
.aip-home .sec-head-d{ display:grid; grid-template-columns:auto 1fr; column-gap: var(--sp-md); align-items:center; max-width:46em; margin-bottom: var(--sp-xl); position:relative; }
.aip-home .sec-head-d .sh-chip{ grid-row: 1 / span 2; align-self:start; display:inline-grid; place-items:center; width:42px; height:42px; border-radius:7px; font-family:var(--font-display); font-weight:700; font-size:1.18rem; color: var(--gold-deep); background: color-mix(in srgb, var(--surface) 72%, transparent); box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--gold-bright) 62%, var(--line)); }
.aip-home .sec-head-d .sh-rule{ grid-column: 2; align-self:end; height:1px; width:100%; max-width:280px; background: var(--gold-hairline); opacity:.85; margin-bottom: 8px; }
.aip-home .sec-head-d .overline{ grid-column:2; display:block; margin-bottom: 8px; }
.aip-home .sec-head-d h2{ grid-column:2; font-size: var(--fs-h1); }
@media (max-width:560px){ .aip-home .sec-head-d{ column-gap: var(--sp-sm); } .aip-home .sec-head-d .sh-rule{ max-width:160px; } }
.aip-home .sec-head-d.center{ display:block; text-align:center; max-width:46em; margin-inline:auto; }
.aip-home .sec-head-d.center .sh-chip{ display:grid; grid-row:auto; margin:0 auto var(--sp-md); }
.aip-home .sec-head-d.center .sh-rule{ display:block; width:64px; max-width:none; margin:0 auto var(--sp-sm); }
.aip-home .sec-head-d.center .overline{ grid-column:auto; margin-bottom:6px; }
.aip-home .sec-head-d.center h2{ grid-column:auto; }

/* values */
.aip-home .value-intro { max-width: 33em; margin: 0 auto var(--sp-xl); text-align:center; font-family: var(--font-display); font-size: 1.22rem; color: var(--bark); line-height:1.9; }
.aip-home .value-intro::first-letter { float:left; font-family: var(--font-display); font-weight:900; font-size: 3.6rem; line-height:.86; padding: 6px 14px 2px 0; margin-top: 4px; color: var(--seal); background: linear-gradient(180deg, transparent 62%, color-mix(in srgb, var(--gold) 22%, transparent) 0); }
.aip-home .values { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; max-width: 980px; margin-inline:auto; }
.aip-home .values .v { padding: 0 var(--sp-lg); text-align: center; position: relative; }
.aip-home .values .v + .v::before { content:""; position:absolute; left:0; top:8%; height:84%; width:1px; background: var(--gold-hairline-v); opacity:.6; }
.aip-home .values .num { font-family: var(--font-display); font-weight:700; font-size: 2rem; line-height:1; color: var(--gold-deep); display:block; margin-bottom: var(--sp-sm); }
.aip-home .values .num .en { display:block; font-family: var(--font-en-display); font-style:italic; font-size:.9rem; color: var(--gold); letter-spacing:.08em; margin-top:4px; }
.aip-home .values h3 { font-size: 1.2rem; margin: var(--sp-sm) 0; }
.aip-home .values p { font-size: .95rem; color: var(--ink-soft); margin:0; }
@media (max-width:820px){ .aip-home .values{ grid-template-columns:1fr 1fr; gap:var(--sp-xl);} .aip-home .values .v+ .v::before{display:none;} }

/* rail / course cards */
.aip-home .rail-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:var(--sp-lg); margin-bottom:var(--sp-lg); }
.aip-home .rail-link{ color:var(--seal); font-weight:600; white-space:nowrap; transition:color var(--dur) var(--ease); }
.aip-home .rail-link:hover{ color:var(--seal-bright); }
.aip-home .rail-wrap{ position:relative; }
.aip-home .rail{ display:grid; grid-auto-flow:column; grid-auto-columns: 268px; gap: var(--sp-lg); overflow-x:auto; padding: 4px 4px var(--sp-md); scroll-snap-type:x mandatory; }
.aip-home .rail::-webkit-scrollbar{ height:6px; } .aip-home .rail::-webkit-scrollbar-thumb{ background:var(--line); border-radius:99px; } .aip-home .rail::-webkit-scrollbar-track{ background:transparent; }
.aip-home .rc{ scroll-snap-align:start; display:block; color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:var(--r-md); overflow:hidden; box-shadow: var(--shadow-sm); transition: transform var(--dur) var(--ease), box-shadow var(--dur) var(--ease), border-color var(--dur) var(--ease); }
.aip-home .rc:hover{ transform: translateY(-4px); box-shadow: var(--shadow-md); border-color: color-mix(in oklch, var(--gold) 40%, var(--line)); }
.aip-home .rc .pic{ aspect-ratio:16/9; background:var(--paper-2); overflow:hidden; border-bottom:1px solid var(--line); position:relative; }
.aip-home .rc .pic img{ width:100%; height:100%; object-fit:cover; object-position:center; transition: transform var(--dur-slow) var(--ease); }
.aip-home .rc:hover .pic img{ transform: scale(1.04); }
.aip-home .rc .pic.ph{ display:grid; place-items:center; border:0; border-bottom:1px solid var(--line); border-radius:0; }
.aip-home .rc .pic.ph::after{ content:""; position:absolute; inset:0; background-image:var(--gua-wash); background-size:120px; opacity:.06; }
.aip-home .rc .pic.ph > span{ position:relative; z-index:1; font-family:var(--font-display); color:var(--clay); font-size:.92rem; letter-spacing:.06em; background:none; padding:0; }
.aip-home .rc .body{ padding: var(--sp-md); }
.aip-home .rc .flag{ display:inline-block; font-size:.66rem; letter-spacing:.14em; font-weight:700; padding:2px 7px; border-radius:3px; color:var(--gold-deep); border:1px solid color-mix(in oklch, var(--gold) 55%, var(--line)); background: color-mix(in oklch, var(--gold) 8%, transparent); }
.aip-home .rc .flag.flagship{ color:var(--on-dark); background:var(--seal); border-color:var(--seal); box-shadow: inset 0 0 0 1px color-mix(in oklch, var(--gold-bright) 60%, transparent); }
.aip-home .rc h3{ font-size:1.12rem; margin:9px 0 3px; }
.aip-home .rc .by{ font-size:.85rem; color:var(--ink-soft); }

/* teachers two-up */
.aip-home .editors{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(36px,5vw,80px); }
.aip-home .editors.as-rail{ grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:minmax(320px, 1fr); overflow-x:auto; padding-bottom:var(--sp-md); scroll-snap-type:x mandatory; }
.aip-home .editors.as-rail .editor{ scroll-snap-align:start; }
.aip-home .editor{ display:grid; grid-template-columns: 168px 1fr; gap:var(--sp-lg); align-items:start; position:relative; }
	.aip-home .editor .pf{ aspect-ratio:4/5; border-radius:var(--r-md); overflow:hidden; background:var(--paper-2); border:1px solid var(--line); position:relative; box-shadow:var(--shadow-md); }
	.aip-home .editor .teacher-photo-link{ display:block; color:inherit; border-radius:var(--r-md); }
	.aip-home .editor .teacher-photo-link:focus-visible{ outline:2px solid var(--seal); outline-offset:4px; }
	.aip-home .editor .pf img{ width:100%;height:100%;object-fit:cover; }
	.aip-home .editor .pf.ph{ display:grid; place-items:center; }
	.aip-home .duotone img,
	.aip-home .duotone-mist img{ filter:none; }
	.aip-home .duotone::after,
	.aip-home .duotone::before,
	.aip-home .duotone-mist::after,
	.aip-home .duotone-mist::before{ content:none; }
.aip-home .needsreal{ position:absolute; right:6px; bottom:6px; z-index:3; font-size:.62rem; letter-spacing:.04em; line-height:1.2; text-align:center; color:var(--on-dark); background: color-mix(in oklch, var(--bark) 88%, transparent); padding:3px 7px; border-radius:4px; box-shadow:var(--shadow-sm); }
.aip-home .editor .role{ display:inline-block; color:var(--clay); font-weight:600; font-size:.8rem; letter-spacing:.1em; }
.aip-home .editor.mist .role{ color:var(--mist-ink); }
.aip-home .editor h3{ font-size:1.5rem; margin:5px 0 4px; }
.aip-home .editor .by{ color:var(--ink-soft); font-size:.9rem; }
.aip-home .editor .q{ font-family:var(--font-display); font-weight:500; color:var(--bark); margin-top:var(--sp-md); font-size:1.06rem; line-height:1.6; position:relative; padding-top:var(--sp-md); }
.aip-home .editor .q::before{ content:""; position:absolute; top:0; left:0; width:40px; height:1px; background:var(--gold-hairline); }
.aip-home .editor.mist .q{ color:var(--mist-ink); }
@media (max-width:860px){ .aip-home .editors{ grid-template-columns:1fr; gap:var(--sp-xl);} }
@media (max-width:420px){ .aip-home .editor{ grid-template-columns:1fr; } .aip-home .editor .pf{max-width:210px;} }

/* heritage mist band */
.aip-home .mist-band{ position:relative; background: linear-gradient(180deg, var(--paper-2), color-mix(in oklch, var(--mist-surface) 38%, var(--paper-2))); border-block:1px solid var(--line); overflow:hidden; }
.aip-home .mist-band::before{ content:""; position:absolute; inset:0; background-image:var(--gua-wash); background-size:200px; opacity:.06; mix-blend-mode:multiply; pointer-events:none; }
.aip-home .mist-band::after{ content:""; position:absolute; top:0; left:0; right:0; height:1px; background:var(--gold-hairline); opacity:.7; }
.aip-home .mist-band > .wrap{ position:relative; z-index:1; }
.aip-home .heritage-line{ display:flex; flex-wrap:wrap; gap:14px var(--sp-md); align-items:center; color:var(--ink-soft); font-family:var(--font-display); font-size:1.18rem; }
.aip-home .heritage-line .node{ display:inline-flex; align-items:baseline; gap:8px; }
.aip-home .heritage-line b{ color:var(--ink); font-weight:700; font-size:1.28rem; }
.aip-home .heritage-line .yr{ font-family:var(--font-en-body); color:var(--clay); font-size:.82rem; }
.aip-home .heritage-line .arrow{ width:40px; height:1px; background:var(--gold-hairline); position:relative; }
.aip-home .heritage-line .arrow::after{ content:""; position:absolute; right:0; top:-3px; width:7px; height:7px; border-top:1px solid var(--gold); border-right:1px solid var(--gold); transform:rotate(45deg); }
.aip-home .heritage-note{ color:var(--ink-soft); max-width:44em; margin-top:var(--sp-lg); }
@media (max-width:560px){ .aip-home .heritage-line .arrow{ width:20px; } .aip-home .heritage-line{ font-size:1.05rem; } }

/* articles editorial */
.aip-home .zone-3{ background:var(--paper-3); position:relative; }
.aip-home .zone-3::before{ content:""; position:absolute; inset:0; pointer-events:none; background-image:var(--grain); mix-blend-mode:multiply; opacity:.55; }
.aip-home .zone-3 > section{ position:relative; z-index:1; }
.aip-home .editorial{ display:grid; grid-template-columns: 1.9fr 1fr; gap: clamp(40px,6vw,96px); }
.aip-home .lead-art a{ color:var(--ink); display:block; }
.aip-home .lead-art .pic{ aspect-ratio:4/3; border-radius:var(--r-md); position:relative; overflow:hidden; margin-bottom:var(--sp-md); border:1px solid color-mix(in oklch, var(--gold) 26%, var(--line)); box-shadow:var(--shadow-md); background: radial-gradient(70% 80% at 78% 20%, color-mix(in oklch, var(--clay) 40%, transparent), transparent 60%), linear-gradient(150deg, var(--paper-2), var(--paper-4)); }
.aip-home .lead-art .pic img{ width:100%; height:100%; object-fit:cover; }
.aip-home .lead-art .pic .seal-water{ position:absolute; inset:0; display:grid; place-items:center; font-family:var(--font-display); font-weight:900; font-size:clamp(3.5rem,9vw,6rem); color:color-mix(in oklch, var(--seal) 10%, transparent); }
.aip-home .lead-art .date{ color:var(--gold-deep); font-family:var(--font-en-body); font-weight:600; font-size:.82rem; letter-spacing:.06em; }
.aip-home .lead-art h3{ font-size:1.62rem; margin:8px 0 10px; line-height:1.32; transition:color var(--dur) var(--ease); }
.aip-home .lead-art a:hover h3{ color:var(--seal); }
.aip-home .lead-art p{ color:var(--ink-soft); }
.aip-home .lead-art p.intro::first-letter{ font-family:var(--font-display); font-weight:900; float:left; font-size:3.4em; line-height:.82; padding:6px 12px 0 0; color:var(--seal); }
.aip-home .more-list .label{ display:block; font-family:var(--font-display); font-size:1.02rem; color:var(--bark); margin-bottom:6px; }
.aip-home .more-list .rule-gold{ margin-bottom:var(--sp-sm); }
.aip-home .more-list .mrow{ display:block; padding: 15px 0; border-bottom:1px solid var(--line); transition: padding-left var(--dur) var(--ease); }
.aip-home .more-list .mrow:hover{ padding-left:8px; }
.aip-home .more-list .date{ color:var(--clay); font-family:var(--font-en-body); font-size:.78rem; }
.aip-home .more-list .mrow h4{ font-family:var(--font-display); font-weight:500; font-size:1.06rem; margin-top:4px; color:var(--ink); transition:color var(--dur) var(--ease); }
.aip-home .more-list .mrow:hover h4{ color:var(--seal); }
@media (max-width:760px){ .aip-home .editorial{ grid-template-columns:1fr; gap:var(--sp-xl);} }
