:root { --black: #0b0806; --black-soft: #13100d; --red: #5d1714; --red-deep: #2d0908; --gold: #c9a258; --gold-soft: #e0c58a; --cream: #e9dfca; --muted: #b9aa91; --paper: #d7c7aa; --ink: #2a2119; --line: rgba(224,197,138,.24); --max: 1240px; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0px; background: var(--black); color: var(--cream); font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.65; }
a { color: inherit; }
.site-header { position: absolute; z-index: 50; top: 0px; left: 50%; transform: translateX(-50%); width: min(calc(100% - 48px), var(--max)); min-height: 84px; display: flex; align-items: center; gap: 32px; border-bottom: 1px solid rgba(224, 197, 138, 0.18); }
.wordmark { font: 600 13px / 1 Georgia, serif; letter-spacing: 0.25em; text-decoration: none; color: var(--gold-soft); white-space: nowrap; }
.site-nav { margin-left: auto; display: flex; align-items: center; gap: 24px; }
.site-nav a { text-decoration: none; font: 600 10px / 1.3 Georgia, serif; letter-spacing: 0.18em; text-transform: uppercase; color: rgb(211, 198, 175); }
.site-nav a:hover { color: var(--gold-soft); }
.nav-cta { border: 1px solid var(--gold); padding: 11px 14px; }
.menu-toggle { display: none; }
.hero { position: relative; min-height: 100vh; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 116px 24px 36px; background: radial-gradient(circle at 50% 18%, rgba(154, 80, 31, 0.25), transparent 24%), linear-gradient(rgb(15, 11, 8) 0%, rgb(18, 13, 9) 42%, rgb(10, 7, 5) 100%); }
.hero::after { content: ""; position: absolute; inset: 0px; pointer-events: none; background: linear-gradient(90deg, rgba(0, 0, 0, 0.48), transparent 18%, transparent 82%, rgba(0, 0, 0, 0.48)); }
.hero-vignette { position: absolute; inset: 0px; box-shadow: rgba(0, 0, 0, 0.88) 0px 0px 180px inset; pointer-events: none; }
.curtain { position: absolute; z-index: 3; top: 0px; width: 21%; height: 100%; background: linear-gradient(90deg, rgba(255, 255, 255, 0.035), transparent 18%, rgba(0, 0, 0, 0.35) 38%, transparent 56%, rgba(255, 255, 255, 0.027) 72%, rgba(0, 0, 0, 0.45)), linear-gradient(rgb(75, 15, 15), rgb(32, 7, 7)); box-shadow: rgba(0, 0, 0, 0.8) 0px 0px 45px inset, rgba(0, 0, 0, 0.7) 0px 0px 60px; }
.curtain::after { content: ""; position: absolute; inset: 0px; opacity: 0.28; background-image: repeating-linear-gradient(90deg, transparent 0px, transparent 24px, rgba(196, 141, 66, 0.22) 26px, transparent 28px, transparent 54px); }
.curtain-left { left: -2%; transform: skewX(-2deg); }
.curtain-right { right: -2%; transform: skewX(2deg); }
.vertical-note { position: absolute; z-index: 8; top: 23%; width: 125px; color: rgb(201, 174, 119); font: 500 10px / 1.9 Georgia, serif; letter-spacing: 0.22em; text-align: center; text-transform: uppercase; }
.vertical-note i { display: block; width: 28px; height: 1px; margin: 18px auto; background: var(--gold); opacity: 0.7; }
.left-note { left: 4.5%; }
.right-note { right: 4.5%; }
.han-glyphs { display: block; margin-bottom: 10px; font: 400 37px / 1.25 "Songti SC", STSong, serif; letter-spacing: 0px; color: rgb(213, 189, 125); }
.seal-rig { position: absolute; z-index: 9; top: 34px; left: 50%; width: 190px; height: 205px; transform: translateX(-50%); animation: 7s ease-in-out 0s infinite normal none running sealFloat; }
.cord { position: absolute; width: 4px; height: 87px; top: 0px; background: linear-gradient(rgb(107, 27, 22), rgb(176, 57, 43) 45%, rgb(76, 16, 13)); box-shadow: rgba(0, 0, 0, 0.8) 0px 0px 8px; }
.cord-a { left: 58px; }
.cord-b { right: 58px; }
.imperial-seal { position: absolute; left: 50%; top: 74px; width: 132px; height: 105px; transform: translateX(-50%) perspective(500px) rotateX(3deg) rotateY(-7deg); background: linear-gradient(145deg, rgb(166, 111, 50), rgb(93, 53, 23) 43%, rgb(44, 23, 11)); border: 2px solid rgb(210, 168, 88); box-shadow: rgba(0, 0, 0, 0.8) 0px 18px 34px, rgba(51, 23, 10, 0.55) 0px 0px 0px 6px inset; }
.imperial-seal::after { content: ""; position: absolute; left: 8px; right: 8px; bottom: -16px; height: 14px; background: linear-gradient(rgb(77, 42, 19), rgb(35, 16, 8)); transform: skewX(-18deg); transform-origin: center top; }
.seal-face { position: absolute; inset: 13px; display: grid; grid-template-columns: 1fr 1fr; border: 2px solid rgb(221, 189, 115); color: rgb(215, 177, 97); font: 700 27px / 1 "Songti SC", STSong, serif; background: rgba(76, 18, 13, 0.78); text-align: center; align-items: center; }
@keyframes sealFloat { 
  0%, 100% { transform: translateX(-50%) translateY(0px); }
  50% { transform: translateX(-50%) translateY(5px); }
}
@media (prefers-reduced-motion: reduce) {
  .seal-rig { animation: auto ease 0s 1 normal none running none; }
}
.hero-copy { position: relative; z-index: 10; width: min(760px, 78vw); text-align: center; margin-top: 120px; }
.eyebrow, .section-kicker { color: var(--gold); text-transform: uppercase; letter-spacing: 0.21em; font: 600 10px / 1.4 Georgia, serif; }
.hero h1 { margin: 10px 0px 0px; font: 400 clamp(72px, 10vw, 148px) / 0.93 Georgia, "Times New Roman", serif; letter-spacing: 0.08em; color: rgb(213, 173, 98); text-shadow: rgba(0, 0, 0, 0.7) 0px 4px 24px; }
.subtitle { margin: 12px 0px 0px; font: 400 16px / 1 Georgia, serif; letter-spacing: 0.54em; color: rgb(231, 223, 209); }
.rule { width: 34px; height: 1px; background: var(--gold); margin: 28px auto 20px; }
.hero-tagline { margin: 0px; font: 400 clamp(18px, 2.2vw, 28px) / 1.48 Georgia, serif; color: rgb(216, 204, 186); }
.palace-window { position: absolute; z-index: 5; bottom: 0px; left: 50%; transform: translateX(-50%); width: min(62vw, 900px); height: 43vh; min-height: 340px; border-left: 1px solid rgba(200, 162, 88, 0.3); border-right: 1px solid rgba(200, 162, 88, 0.3); overflow: hidden; background: linear-gradient(rgb(159, 104, 58), rgb(169, 111, 62) 30%, rgb(75, 51, 40) 75%, rgb(24, 16, 12)); box-shadow: rgba(188, 114, 47, 0.14) 0px -4px 40px; }
.sky { position: absolute; inset: 0px; background: radial-gradient(circle at 47% 15%, rgba(255, 220, 142, 0.75), transparent 15%), linear-gradient(rgb(224, 168, 98), rgb(126, 75, 44) 58%, rgb(44, 26, 20) 100%); }
.mountains { position: absolute; left: -8%; right: -8%; bottom: 31%; height: 45%; opacity: 0.72; background: linear-gradient(145deg, transparent 0px, transparent 22%, rgb(76, 56, 45) 23%, rgb(76, 56, 45) 38%, transparent 39%), linear-gradient(215deg, transparent 0px, transparent 41%, rgb(90, 64, 48) 42%, rgb(90, 64, 48) 56%, transparent 57%), linear-gradient(155deg, transparent 0px, transparent 55%, rgb(59, 45, 40) 56%, rgb(59, 45, 40) 72%, transparent 73%); filter: blur(0.2px); }
.palace { position: absolute; bottom: 0px; background: rgb(23, 17, 14); }
.palace::before { content: ""; position: absolute; left: 50%; transform: translateX(-50%); bottom: 100%; border-left: 110px solid transparent; border-right: 110px solid transparent; border-bottom: 34px solid rgb(32, 23, 16); width: 0px; height: 0px; }
.palace-back { left: 9%; width: 28%; height: 92px; opacity: 0.7; }
.palace-mid { right: 6%; width: 30%; height: 118px; opacity: 0.8; }
.palace-front { left: 37%; width: 32%; height: 138px; opacity: 0.95; }
.emperor-silhouette { position: absolute; z-index: 8; left: 50%; bottom: -8px; width: 210px; height: 286px; transform: translateX(-50%); }
.head { position: absolute; left: 84px; top: 56px; width: 42px; height: 52px; border-radius: 48% 48% 44% 44%; background: rgb(17, 13, 10); }
.crown { position: absolute; left: 60px; top: 31px; width: 90px; height: 31px; border-top: 7px solid rgb(17, 13, 10); }
.crown::after { content: ""; position: absolute; left: 13px; top: 4px; width: 64px; height: 29px; background: repeating-linear-gradient(90deg, rgb(11, 8, 6) 0px, rgb(11, 8, 6) 2px, transparent 2px, transparent 7px); }
.robe { position: absolute; left: 20px; bottom: 0px; width: 170px; height: 205px; background: linear-gradient(90deg, rgb(20, 11, 8), rgb(53, 16, 12) 35%, rgb(61, 17, 12) 65%, rgb(20, 11, 8)); clip-path: polygon(36% 0px, 64% 0px, 86% 20%, 100% 100%, 0px 100%, 14% 20%); }
.robe::after { content: ""; position: absolute; inset: 18px 28px; border: 1px solid rgba(193, 145, 61, 0.38); }
.hero-bottom { position: relative; z-index: 15; margin-top: auto; padding-top: 320px; text-align: center; }
.premiere { margin: 0px 0px 14px; font: 500 15px / 1 Georgia, serif; letter-spacing: 0.3em; color: var(--gold-soft); }
.button { display: inline-flex; min-height: 45px; align-items: center; justify-content: center; padding: 0px 28px; text-decoration: none; text-transform: uppercase; letter-spacing: 0.16em; font: 600 10px / 1 Georgia, serif; }
.button-gold { border: 1px solid var(--gold); color: var(--gold-soft); background: rgba(0, 0, 0, 0.25); }
.button-gold:hover { background: var(--gold); color: rgb(23, 14, 8); }
.scroll-cue { display: block; margin-top: 10px; text-decoration: none; font-size: 22px; color: var(--gold-soft); }
.parchment-section { position: relative; overflow: hidden; background: radial-gradient(circle at 20% 20%, rgba(255,255,255,.14), transparent 24%),
    repeating-linear-gradient(0deg, rgba(68,45,23,.022) 0 1px, transparent 1px 4px),
    var(--paper); color: var(--ink); padding: 76px 24px 84px; }
.parchment-section::after { content: ""; position: absolute; inset: 0px; box-shadow: rgba(64, 42, 22, 0.18) 0px 0px 90px inset; pointer-events: none; }
.parchment-grid { position: relative; z-index: 2; width: min(100%, var(--max)); margin: 0px auto; display: grid; grid-template-columns: 1fr 0.85fr; gap: 90px; align-items: center; }
.section-kicker.dark { color: rgb(126, 41, 37); }
.parchment-section h2, .vision-detail h2, .development-detail h2, .contact-section h2 { margin: 6px 0px 22px; font: 400 clamp(42px, 5.3vw, 72px) / 1.04 Georgia, serif; letter-spacing: -0.03em; }
.parchment-section h2 { color: rgb(123, 36, 31); text-transform: uppercase; font-size: clamp(36px, 4.7vw, 64px); letter-spacing: 0.03em; }
.parchment-section p { max-width: 590px; font-family: Georgia, serif; font-size: 17px; }
.text-link { display: inline-block; margin-top: 12px; text-decoration: none; text-transform: uppercase; letter-spacing: 0.12em; font: 700 10px / 1 Georgia, serif; border-bottom: 1px solid rgb(95, 59, 34); padding-bottom: 5px; }
.parchment-section blockquote { margin: 0px; text-align: center; font: italic 400 clamp(26px, 3.6vw, 48px) / 1.35 Georgia, serif; color: rgb(74, 53, 39); }
.ink-branch { position: absolute; top: -34px; right: -28px; width: 46%; height: 210px; border-top: 8px solid rgba(33, 41, 29, 0.68); border-radius: 60% 0px 0px; transform: rotate(-8deg); opacity: 0.5; }
.ink-branch::after { content: ""; position: absolute; width: 180px; height: 90px; right: 55px; top: 20px; background: radial-gradient(rgba(32, 46, 31, 0.62) 0px, rgba(32, 46, 31, 0.62) 11%, transparent 12%) 0px 0px / 40px 24px; transform: rotate(14deg); }
.cards-section { width: min(calc(100% - 48px), var(--max)); margin: 0px auto; padding: 40px 0px 90px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }
.feature-card { min-width: 0px; }
.card-art { height: 148px; margin-bottom: 18px; border: 1px solid rgba(224, 197, 138, 0.12); overflow: hidden; }
.bamboo { background: repeating-linear-gradient(90deg, rgb(129, 84, 38) 0px, rgb(129, 84, 38) 14px, rgb(196, 149, 84) 15px, rgb(196, 149, 84) 18px, rgb(61, 39, 21) 19px, rgb(61, 39, 21) 21px), linear-gradient(rgb(86, 54, 23), rgb(43, 25, 13)); transform: perspective(400px) rotateX(1deg); }
.textile { background: radial-gradient(circle at 60% 45%, transparent 0px, transparent 23px, rgb(195, 156, 75) 25px, rgb(195, 156, 75) 28px, transparent 30px), repeating-linear-gradient(45deg, rgba(218, 171, 74, 0.12) 0px, rgba(218, 171, 74, 0.12) 2px, transparent 2px, transparent 10px), linear-gradient(135deg, rgb(110, 23, 21), rgb(49, 8, 7)); }
.night-palace { position: relative; background: linear-gradient(rgb(28, 32, 33), rgb(40, 48, 47) 47%, rgb(13, 12, 11)); }
.night-palace::after { content: ""; position: absolute; left: 18%; right: 18%; bottom: 0px; height: 65px; background: rgb(8, 7, 6); clip-path: polygon(0px 24%, 40% 24%, 50% 0px, 60% 24%, 100% 24%, 100% 100%, 0px 100%); }
.blossom { background: radial-gradient(circle at 65% 42%, rgb(232, 216, 185) 0px, rgb(232, 216, 185) 7px, transparent 8px), radial-gradient(circle at 48% 58%, rgb(233, 217, 186) 0px, rgb(233, 217, 186) 8px, transparent 9px), radial-gradient(circle at 78% 72%, rgb(227, 207, 172) 0px, rgb(227, 207, 172) 7px, transparent 8px), linear-gradient(160deg, rgb(43, 43, 37) 0px, rgb(43, 43, 37) 55%, rgb(21, 17, 14) 56%); }
.feature-card h3 { margin: 8px 0px 16px; font: 400 17px / 1.5 Georgia, serif; color: rgb(217, 205, 185); }
.feature-card > a { text-decoration: none; color: var(--gold); text-transform: uppercase; letter-spacing: 0.14em; font: 600 10px / 1 Georgia, serif; }
.vision-detail, .development-detail, .contact-section { width: min(calc(100% - 48px), var(--max)); margin: 0px auto; padding: 100px 0px; border-top: 1px solid var(--line); }
.vision-detail { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 80px; }
.vision-copy > p, .development-detail > div > p, .contact-box p { color: var(--muted); font-size: 17px; }
.vision-points { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; margin-top: 48px; }
.vision-points > div { border-top: 1px solid var(--line); padding-top: 18px; }
.vision-points span { color: var(--gold); font: 700 11px / 1 Georgia, serif; }
.vision-points h3 { font: 400 22px / 1.2 Georgia, serif; margin: 12px 0px 9px; }
.vision-points p { color: var(--muted); font-size: 13px; }
.development-detail { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 80px; align-items: start; }
.status-card { border: 1px solid var(--line); background: rgb(16, 12, 9); padding: 8px 24px; }
.status-card div { display: flex; justify-content: space-between; gap: 24px; padding: 18px 0px; border-bottom: 1px solid var(--line); }
.status-card div:last-child { border-bottom: 0px; }
.status-card span { color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: 0.12em; }
.status-card strong { font: 400 17px / 1.3 Georgia, serif; text-align: right; }
.quote-band { padding: 100px 24px; text-align: center; background: linear-gradient(145deg, rgb(24, 15, 11), rgb(13, 9, 7)); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.quote-band blockquote { max-width: 1000px; margin: 0px auto; font: 400 clamp(31px, 4.4vw, 57px) / 1.28 Georgia, serif; color: rgb(223, 208, 185); }
.quote-band p { color: var(--gold); }
.contact-section { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; }
.contact-box { align-self: end; }
.email-link { display: inline-block; margin: 10px 0px; font: 400 clamp(24px, 3vw, 39px) / 1.2 Georgia, serif; color: var(--gold-soft); text-decoration-color: rgb(123, 36, 31); text-underline-offset: 8px; }
.fine-print { font-size: 11px !important; }
.site-footer { width: min(calc(100% - 48px), var(--max)); margin: 0px auto; padding: 35px 0px 48px; display: grid; grid-template-columns: auto 1fr auto; gap: 30px; align-items: center; color: rgb(155, 141, 119); font: 500 9px / 1.5 Georgia, serif; letter-spacing: 0.12em; }
.footer-brand { display: flex; align-items: center; gap: 12px; color: rgb(203, 189, 167); }
.mini-seal { width: 39px; height: 39px; border: 1px solid rgb(185, 148, 80); display: grid; place-items: center; color: rgb(202, 162, 87); font: 400 22px / 1 "Songti SC", serif; }
.footer-meta { text-align: center; }
.footer-motto { color: rgb(196, 183, 159); line-height: 1.25; }
@media (max-width: 980px) {
  .site-header { min-height: 72px; }
  .menu-toggle { display: block; margin-left: auto; border: 1px solid rgba(224, 197, 138, 0.3); background: rgba(0, 0, 0, 0.2); color: rgb(221, 209, 190); padding: 9px 11px; text-transform: uppercase; letter-spacing: 0.12em; font-size: 10px; }
  .site-nav { display: none; position: absolute; top: 72px; right: 0px; width: min(320px, 90vw); padding: 20px; flex-direction: column; align-items: flex-start; background: rgb(11, 8, 6); border: 1px solid var(--line); }
  .site-nav.open { display: flex; }
  .vertical-note { display: none; }
  .palace-window { width: 74vw; }
  .cards-section { grid-template-columns: repeat(2, 1fr); }
  .vision-detail, .development-detail, .contact-section, .parchment-grid { grid-template-columns: 1fr; gap: 40px; }
  .vision-points { grid-template-columns: 1fr; }
  .site-footer { grid-template-columns: 1fr; text-align: center; }
  .footer-brand { justify-content: center; }
}
@media (max-width: 640px) {
  .site-header { width: calc(100% - 28px); }
  .hero { min-height: 920px; padding: 100px 14px 28px; }
  .curtain { width: 23%; opacity: 0.92; }
  .seal-rig { top: 50px; transform: translateX(-50%) scale(0.86); }
  .hero-copy { width: 92vw; margin-top: 135px; }
  .hero h1 { font-size: clamp(54px, 17vw, 86px); letter-spacing: 0.04em; }
  .subtitle { font-size: 12px; letter-spacing: 0.37em; }
  .palace-window { width: 82vw; height: 400px; min-height: 0px; }
  .emperor-silhouette { transform: translateX(-50%) scale(0.86); transform-origin: center bottom; }
  .hero-bottom { padding-top: 410px; }
  .premiere { font-size: 12px; letter-spacing: 0.22em; }
  .cards-section { width: calc(100% - 28px); grid-template-columns: 1fr; }
  .vision-detail, .development-detail, .contact-section { width: calc(100% - 28px); padding: 76px 0px; }
  .parchment-section { padding-left: 14px; padding-right: 14px; }
  .site-footer { width: calc(100% - 28px); }
}
.updates-section { border-top: 1px solid rgba(210, 178, 111, 0.25); }
#signup-form label { display: block; margin: 0px 0px 0.65rem; }
#signup-email { width: 100%; box-sizing: border-box; padding: 0.9rem; color: rgb(245, 234, 216); background: rgb(27, 20, 16); border: 1px solid rgb(177, 139, 80); border-radius: 0px; font: inherit; margin-bottom: 1.25rem; }
#signup-form .signup-consent { display: flex; align-items: flex-start; gap: 0.65rem; font-size: 0.9rem; line-height: 1.5; }
.signup-consent input { margin-top: 0.3rem; flex-shrink: 0; }
.signup-button { padding: 0.9rem 1.4rem; border: 1px solid rgb(210, 178, 111); color: rgb(19, 13, 9); background: rgb(210, 178, 111); font: inherit; cursor: pointer; }
.signup-button:disabled { opacity: 0.6; cursor: wait; }
#signup-status { min-height: 1.5em; }
.signup-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
#signup-form a { color: inherit; text-decoration: underline; }
#signup-email:focus-visible, .signup-button:focus-visible { outline: rgb(245, 234, 216) solid 2px; outline-offset: 3px; }
/* Refined hierarchy, readable controls, and responsive spacing. */
a,button,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid #e0c58a;outline-offset:5px}section{scroll-margin-top:24px}.skip-link{position:fixed;top:8px;left:8px;z-index:100;background:#e0c58a;color:#100b08;padding:12px;transform:translateY(-180%)}.skip-link:focus{transform:none}.site-nav a{font-size:11px;min-height:44px;display:flex;align-items:center}.hero{padding-top:250px}.hero-copy{margin-top:0}.seal-rig{top:26px}.seal-face{display:grid;grid-template-columns:1fr;font-size:50px}.hero h1{font-size:clamp(72px,9vw,132px)}.hero-bottom{padding-top:290px}.vision-detail{border-top:0}.creator-credit{color:var(--gold-soft);font-family:Georgia,serif;font-size:20px}.email-link{overflow-wrap:anywhere}.fine-print{font-size:13px!important}.section-kicker{font-size:12px}.vision-points p{font-size:15px}.footer-meta{font-size:11px}.menu-toggle{min-height:44px;min-width:64px}.button{font-size:12px;min-height:48px} .updates-section{align-items:start}
@media(max-width:640px){.hero{padding-top:250px;min-height:980px}.hero-copy{margin-top:0;width:100%}.hero h1{font-size:clamp(48px,16vw,86px)}.hero-bottom{padding-top:340px}.seal-rig{top:35px}.subtitle{line-height:1.5}.premiere{line-height:1.6}.contact-section,.vision-detail,.development-detail{padding:56px 0}.status-card div{flex-direction:column;gap:8px}.status-card strong{text-align:left}.contact-section h2,.vision-detail h2,.development-detail h2{font-size:clamp(34px,10vw,52px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.seal-rig{animation:none}}

.updates-section{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:40px}.signup-panel{min-width:0}.signup-frame{display:block;width:100%;height:1450px;border:0;background:#f0ebf8;border-radius:4px}.signup-panel .fine-print{color:var(--cream);line-height:1.6}.signup-panel a{text-underline-offset:3px}@media(max-width:980px){.updates-section{grid-template-columns:1fr}.signup-frame{height:1500px}}@media(max-width:480px){.signup-frame{height:1850px}}

.stage-concept{padding:80px 24px;background:#100c09}.stage-concept>*,.procession-concept{width:min(100%,1240px);margin-left:auto;margin-right:auto}.concept-heading{margin-bottom:32px}.stage-concept h2,.procession-concept h2{font:400 clamp(36px,4.5vw,62px)/1.08 Georgia,serif;letter-spacing:-.025em;margin:12px 0 24px}.stage-concept figure,.procession-concept figure{margin-top:0;margin-bottom:0}.stage-concept img,.procession-concept img{display:block;width:100%;height:auto;border:1px solid var(--line)}figcaption{font-size:13px;line-height:1.65;color:#c4b79f;margin-top:16px;max-width:900px}figcaption strong{color:var(--gold-soft);font-weight:500}.procession-concept{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;align-items:center;padding:0 24px 100px}.procession-concept>div>p:not(.section-kicker){font-size:18px;color:var(--muted);max-width:500px}.procession-concept .concept-note{font-size:14px!important;color:var(--gold-soft)!important;border-top:1px solid var(--line);padding-top:24px;margin-top:30px}@media(max-width:800px){.procession-concept{grid-template-columns:1fr;gap:32px;padding:0 14px 64px}.stage-concept{padding:56px 14px}.stage-concept h2,.procession-concept h2{font-size:clamp(32px,8vw,48px)}.procession-concept figure{max-width:560px}.concept-heading{margin-bottom:24px}}
