:root {
	--ci-ink: #1d302b;
	--ci-forest: #13372f;
	--ci-paper: #f1eadc;
	--ci-white: #fffdf8;
	--ci-coral: #bd593f;
	--ci-gold: #dba542;
	--ci-stone: #c8bca5;
	--ci-line: rgba(29,48,43,.16);
}

body.page-chichen-architecture-explorer { background: #dfd6c5; }
.page-chichen-architecture-explorer .site { max-width: none; background: var(--ci-paper); }
.page-chichen-architecture-explorer .content-wrapper { display: block; max-width: none; }
.chichen-explorer-page.site-main { padding: 0; color: var(--ci-ink); background: linear-gradient(rgba(29,48,43,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(29,48,43,.026) 1px,transparent 1px),var(--ci-paper); background-size: 32px 32px; font-family: var(--wikipress-font-ui); }
.ci-shell { max-width: 1220px; margin: 0 auto; padding: 26px 34px 88px; }
.ci-breadcrumbs { display: flex; gap: 9px; align-items: center; margin-bottom: 35px; color: #717a74; font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.ci-breadcrumbs a { color: inherit; text-decoration: none; }
.ci-breadcrumbs a:hover { color: var(--ci-coral); }
.ci-eyebrow { display: flex; gap: 10px; align-items: center; margin: 0 0 15px; color: var(--ci-coral); font-size: .68rem; font-weight: 750; letter-spacing: .17em; text-transform: uppercase; }
.ci-eyebrow > span { width: 28px; height: 2px; background: currentColor; }

.ci-hero { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 55px; align-items: center; min-height: 360px; }
.ci-hero h1 { margin: 0; padding: 0; border: 0; color: var(--ci-ink); font: 400 clamp(3.3rem,6.4vw,6.15rem)/.9 Georgia,serif; letter-spacing: -.055em; }
.ci-hero h1 em { color: var(--ci-coral); font-weight: 400; }
.ci-hero > div:first-child > p:last-child { max-width: 720px; margin: 27px 0 0; color: #58635d; font: 400 1.08rem/1.65 Georgia,serif; }
.ci-hero-motif { position: relative; width: 250px; height: 250px; justify-self: center; border: 1px solid rgba(189,89,63,.25); transform: rotate(45deg); }
.ci-hero-motif::before,.ci-hero-motif::after { position: absolute; inset: 28px; border: 1px solid var(--ci-line); content: ""; }
.ci-hero-motif::after { inset: 59px; background: rgba(219,165,66,.13); }
.ci-hero-motif span { position: absolute; z-index: 2; inset: 92px; background: var(--ci-forest); }
.ci-hero-motif i { position: absolute; z-index: 2; width: 8px; height: 8px; border-radius: 50%; background: var(--ci-coral); }
.ci-hero-motif i:nth-of-type(1) { top: 20px; left: 20px; }
.ci-hero-motif i:nth-of-type(2) { top: 20px; right: 20px; }
.ci-hero-motif i:nth-of-type(3) { right: 20px; bottom: 20px; }
.ci-hero-motif i:nth-of-type(4) { bottom: 20px; left: 20px; }
.ci-hero-motif strong { position: absolute; top: -28px; left: 50%; color: var(--ci-coral); font-size: .7rem; transform: translateX(-50%) rotate(-45deg); }

.ci-explorer { margin-top: 30px; overflow: hidden; background: var(--ci-white); box-shadow: 0 24px 80px rgba(25,36,32,.15); }
.ci-explorer-bar { display: grid; grid-template-columns: 1fr 300px; gap: 35px; align-items: end; padding: 28px 32px; border-bottom: 1px solid var(--ci-line); }
.ci-step { display: flex; gap: 10px; align-items: center; margin: 0; color: #78817a; font-size: .63rem; font-weight: 750; letter-spacing: .14em; text-transform: uppercase; }
.ci-step > span { display: grid; width: 27px; height: 27px; border: 1px solid currentColor; border-radius: 50%; place-items: center; font-size: .57rem; }
.ci-explorer-bar h2 { margin: 17px 0 0; padding: 0; border: 0; font: 400 clamp(1.7rem,3vw,2.5rem)/1.08 Georgia,serif; }
.ci-explorer-bar > p { margin: 0; color: #7a827c; text-align: right; font-size: .65rem; line-height: 1.5; }
.ci-explorer-grid { display: grid; grid-template-columns: minmax(560px,1.25fr) minmax(430px,.75fr); }
.ci-map-panel { min-width: 0; padding: 25px 28px 22px; background: #ebe4d7; }
.ci-map-head,.ci-map-foot { display: flex; justify-content: space-between; align-items: center; color: #757e77; font-size: .59rem; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; }
.ci-map-head strong { color: var(--ci-coral); font-size: inherit; }
.ci-map-head i { font-style: normal; font-size: 1rem; }
.ci-map { position: relative; height: 560px; margin-top: 10px; overflow: hidden; border: 1px solid rgba(29,48,43,.11); background: linear-gradient(rgba(29,48,43,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(29,48,43,.045) 1px,transparent 1px),rgba(255,253,248,.52); background-size: 25px 25px; }
.ci-map svg { display: block; width: 100%; height: 100%; }
.ci-map-route { fill: none; stroke: var(--ci-coral); stroke-width: 2; stroke-dasharray: 6 7; opacity: .45; }
.ci-map-route-faint { stroke: var(--ci-forest); opacity: .2; }
.ci-map-plaza { fill: rgba(219,165,66,.07); stroke: rgba(29,48,43,.15); stroke-width: 1; stroke-dasharray: 4 6; }
.ci-shape-court,.ci-shape-castillo,.ci-shape-venus,.ci-shape-warriors,.ci-shape-caracol { fill: rgba(19,55,47,.05); stroke: rgba(19,55,47,.23); stroke-width: 2; }
.ci-map-node { position: absolute; display: flex; gap: 8px; align-items: center; max-width: 165px; padding: 8px 10px 8px 8px; border: 1px solid rgba(29,48,43,.19); background: rgba(255,253,248,.92); color: var(--ci-ink); cursor: pointer; text-align: left; font-family: var(--wikipress-font-ui); box-shadow: 0 5px 14px rgba(29,48,43,.08); transform: translate(-50%,-50%); }
.ci-map-node span { display: grid; flex: 0 0 26px; width: 26px; height: 26px; border-radius: 50%; background: #e6ddce; place-items: center; color: var(--ci-coral); font-size: .54rem; font-weight: 750; }
.ci-map-node strong { font: 400 .76rem/1.15 Georgia,serif; }
.ci-map-node:hover,.ci-map-node:focus-visible { z-index: 3; outline: 2px solid var(--ci-coral); outline-offset: 2px; }
.ci-map-node[aria-pressed="true"] { z-index: 2; border-color: var(--ci-coral); background: var(--ci-coral); color: #fff; }
.ci-map-node[aria-pressed="true"] span { background: var(--ci-gold); color: var(--ci-forest); }
.ci-node-ball { top: 27%; left: 19%; }
.ci-node-venus { top: 23%; left: 49%; }
.ci-node-castillo { top: 51%; left: 49%; }
.ci-node-warriors { top: 47%; left: 79%; }
.ci-node-caracol { top: 80%; left: 36%; }
.ci-map-foot { justify-content: flex-start; gap: 22px; margin-top: 14px; letter-spacing: .05em; text-transform: none; }
.ci-map-foot span { display: flex; gap: 6px; align-items: center; }
.ci-map-foot i { width: 18px; height: 7px; border: 1px solid rgba(29,48,43,.18); background: rgba(219,165,66,.13); }
.ci-map-foot span:last-child i { height: 1px; border: 0; border-top: 1px dashed var(--ci-coral); background: none; }

.ci-detail { position: relative; min-width: 0; padding: 32px 34px 29px; overflow: hidden; color: #fff9eb; background: radial-gradient(circle at 82% 9%,rgba(219,165,66,.13),transparent 27%),linear-gradient(145deg,#17443b,var(--ci-forest)); }
.ci-detail::before { position: absolute; inset: 0; opacity: .1; background: radial-gradient(#fff .65px,transparent .75px); background-size: 14px 14px; content: ""; pointer-events: none; }
.ci-detail > * { position: relative; z-index: 1; }
.ci-detail-head { display: flex; justify-content: space-between; align-items: flex-start; }
.ci-step-light { color: rgba(255,255,255,.48); }
.ci-detail-head > b { color: var(--ci-gold); font: 400 .75rem/1 Georgia,serif; letter-spacing: .1em; }
.ci-detail-title { margin-top: 34px; }
.ci-detail-title small,.ci-detail-sections small { display: block; color: var(--ci-gold); font-size: .55rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
.ci-detail-title h2 { margin: 8px 0 4px; padding: 0; border: 0; color: #fff; font: 400 clamp(2.3rem,4vw,3.5rem)/1 Georgia,serif; letter-spacing: -.04em; }
.ci-detail-title p { margin: 0; color: rgba(255,255,255,.45); font-size: .65rem; }
.ci-form-illustration { position: relative; height: 105px; margin: 25px 0 20px; border-bottom: 1px solid rgba(255,255,255,.15); }
.ci-form-illustration > * { position: absolute; display: block; left: 50%; border: 1px solid rgba(219,165,66,.62); background: rgba(219,165,66,.06); transform: translateX(-50%); }
.ci-form-illustration[data-form="pyramid"] span { bottom: 0; width: 185px; height: 23px; }
.ci-form-illustration[data-form="pyramid"] i:nth-of-type(1) { bottom: 23px; width: 145px; height: 21px; }
.ci-form-illustration[data-form="pyramid"] i:nth-of-type(2) { bottom: 44px; width: 105px; height: 20px; }
.ci-form-illustration[data-form="pyramid"] i:nth-of-type(3) { bottom: 64px; width: 65px; height: 20px; }
.ci-form-illustration[data-form="pyramid"] i:nth-of-type(4) { bottom: 84px; width: 35px; height: 20px; background: var(--ci-gold); }
.ci-form-illustration[data-form="court"] span { bottom: 0; width: 210px; height: 18px; }
.ci-form-illustration[data-form="court"] i:nth-of-type(1),.ci-form-illustration[data-form="court"] i:nth-of-type(2) { bottom: 18px; width: 28px; height: 75px; }
.ci-form-illustration[data-form="court"] i:nth-of-type(1) { margin-left: -72px; }
.ci-form-illustration[data-form="court"] i:nth-of-type(2) { margin-left: 72px; }
.ci-form-illustration[data-form="court"] i:nth-of-type(3),.ci-form-illustration[data-form="court"] i:nth-of-type(4) { display: none; }
.ci-form-illustration[data-form="platform"] span { bottom: 0; width: 200px; height: 22px; }
.ci-form-illustration[data-form="platform"] i:nth-of-type(1) { bottom: 22px; width: 165px; height: 22px; }
.ci-form-illustration[data-form="platform"] i:nth-of-type(2) { bottom: 44px; width: 130px; height: 18px; }
.ci-form-illustration[data-form="platform"] i:nth-of-type(3),.ci-form-illustration[data-form="platform"] i:nth-of-type(4) { display: none; }
.ci-form-illustration[data-form="columns"] span { bottom: 0; width: 220px; height: 17px; }
.ci-form-illustration[data-form="columns"] i { bottom: 17px; width: 13px; height: 73px; }
.ci-form-illustration[data-form="columns"] i:nth-of-type(1) { margin-left: -75px; }.ci-form-illustration[data-form="columns"] i:nth-of-type(2) { margin-left: -25px; }.ci-form-illustration[data-form="columns"] i:nth-of-type(3) { margin-left: 25px; }.ci-form-illustration[data-form="columns"] i:nth-of-type(4) { margin-left: 75px; }
.ci-form-illustration[data-form="tower"] span { bottom: 0; width: 200px; height: 22px; }
.ci-form-illustration[data-form="tower"] i:nth-of-type(1) { bottom: 22px; width: 145px; height: 17px; }
.ci-form-illustration[data-form="tower"] i:nth-of-type(2) { bottom: 39px; width: 75px; height: 58px; border-radius: 50% 50% 0 0; }
.ci-form-illustration[data-form="tower"] i:nth-of-type(3),.ci-form-illustration[data-form="tower"] i:nth-of-type(4) { display: none; }
.ci-summary { margin: 0; color: rgba(255,255,255,.78); font: 400 .88rem/1.65 Georgia,serif; }
.ci-detail-sections { display: grid; grid-template-columns: 1fr 1fr; gap: 19px; margin-top: 23px; padding-top: 20px; border-top: 1px solid rgba(255,255,255,.12); }
.ci-detail-sections p { margin: 7px 0 0; color: rgba(255,255,255,.58); font-size: .68rem; line-height: 1.55; }
.ci-evidence-list { display: grid; gap: 8px; margin: 23px 0 0; padding: 18px 0 0; border-top: 1px solid rgba(255,255,255,.12); list-style: none; }
.ci-evidence-list li { display: grid; grid-template-columns: 62px 1fr; gap: 10px; align-items: start; }
.ci-evidence-list li > span,.ci-status-grid article > span { display: inline-block; width: max-content; padding: 4px 6px; font-size: .51rem; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.ci-status-known { background: rgba(111,168,135,.2); color: #b9e3ca; }
.ci-status-proposed { background: rgba(219,165,66,.2); color: #f4cf82; }
.ci-status-debated { background: rgba(189,89,63,.23); color: #f4b7a7; }
.ci-evidence-list p { margin: 1px 0 0; color: rgba(255,255,255,.68); font-size: .64rem; line-height: 1.45; }
.ci-detail-actions { display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: center; margin-top: 25px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,.12); }
.ci-detail-actions button,.ci-detail-actions a { padding: 9px 8px; border: 1px solid rgba(255,255,255,.2); background: transparent; color: #fff; cursor: pointer; text-align: center; text-decoration: none; font: 700 .59rem/1 var(--wikipress-font-ui); }
.ci-detail-actions button:hover,.ci-detail-actions a:hover { border-color: var(--ci-gold); color: var(--ci-gold); }

.ci-structure-nav { display: grid; grid-template-columns: repeat(5,1fr); border-top: 1px solid var(--ci-line); }
.ci-structure-nav button { display: grid; grid-template-columns: auto 1fr; gap: 3px 9px; min-height: 88px; padding: 15px; border: 0; border-right: 1px solid var(--ci-line); background: #fff; color: var(--ci-ink); cursor: pointer; text-align: left; }
.ci-structure-nav button:last-child { border-right: 0; }
.ci-structure-nav button > span { grid-row: 1 / 3; color: var(--ci-coral); font-size: .55rem; }
.ci-structure-nav strong { font: 400 .82rem/1.15 Georgia,serif; }
.ci-structure-nav small { color: #858b85; font-size: .53rem; text-transform: uppercase; }
.ci-structure-nav button[aria-pressed="true"] { color: #fff; background: var(--ci-coral); }
.ci-structure-nav button[aria-pressed="true"] span,.ci-structure-nav button[aria-pressed="true"] small { color: rgba(255,255,255,.72); }
.ci-structure-nav button:hover,.ci-structure-nav button:focus-visible { outline: 2px solid var(--ci-coral); outline-offset: -2px; }

.ci-reading { margin-top: 100px; }
.ci-section-heading { display: grid; grid-template-columns: 1fr 440px; gap: 55px; align-items: end; }
.ci-section-heading h2,.ci-context h2,.ci-sources h2 { margin: 0; padding: 0; border: 0; font: 400 clamp(2.3rem,4.4vw,3.9rem)/1 Georgia,serif; letter-spacing: -.04em; }
.ci-section-heading > p { margin: 0; color: #647069; font-size: .84rem; line-height: 1.65; }
.ci-status-grid { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 36px; border-top: 1px solid var(--ci-line); border-left: 1px solid var(--ci-line); }
.ci-status-grid article { min-height: 190px; padding: 27px; border-right: 1px solid var(--ci-line); border-bottom: 1px solid var(--ci-line); background: rgba(255,255,255,.45); }
.ci-status-grid article .ci-status-known { background: #dbe9df; color: #316044; }.ci-status-grid article .ci-status-proposed { background: #f1e3bd; color: #735716; }.ci-status-grid article .ci-status-debated { background: #efd6cf; color: #82402f; }
.ci-status-grid h3 { margin: 39px 0 8px; font: 400 1.25rem/1.1 Georgia,serif; }
.ci-status-grid p { margin: 0; color: #69736d; font-size: .75rem; line-height: 1.55; }
.ci-context { display: grid; grid-template-columns: .67fr 1.33fr; gap: 65px; margin-top: 100px; padding: 52px; color: #fff; background: var(--ci-forest); }
.ci-context .ci-eyebrow { color: var(--ci-gold); }
.ci-context > div:last-child p { margin: 0 0 17px; color: rgba(255,255,255,.64); font: 400 .89rem/1.7 Georgia,serif; }
.ci-context > div:last-child p:last-child { margin-bottom: 0; }
.ci-sources { display: grid; grid-template-columns: .67fr 1.33fr; gap: 65px; margin-top: 100px; padding-top: 48px; border-top: 1px solid var(--ci-line); }
.ci-source-list { border-top: 1px solid var(--ci-line); }
.ci-source-list a { display: grid; grid-template-columns: 165px 1fr auto; gap: 18px; align-items: center; padding: 20px 5px; border-bottom: 1px solid var(--ci-line); color: var(--ci-ink); text-decoration: none; }
.ci-source-list a:hover strong { color: var(--ci-coral); }
.ci-source-list small { color: #81877f; font-size: .58rem; letter-spacing: .07em; text-transform: uppercase; }
.ci-source-list strong { font: 400 1rem/1.2 Georgia,serif; }
.ci-source-list span { color: var(--ci-coral); }

@media (max-width: 1050px) {
	.ci-explorer-grid { grid-template-columns: 1fr; }
	.ci-map { height: 510px; }
	.ci-detail { min-height: 690px; }
}

@media (max-width: 760px) {
	.page-chichen-architecture-explorer .header-inner { flex-wrap: wrap; }
	.page-chichen-architecture-explorer .site-branding { flex: 1 1 100%; min-width: 0; width: 100%; }
	.page-chichen-architecture-explorer .site-title,.page-chichen-architecture-explorer .site-description { width: auto; overflow-wrap: anywhere; }
	.page-chichen-architecture-explorer .main-navigation { min-width: 0; }
	.ci-shell { padding: 22px 18px 65px; }
	.ci-breadcrumbs { margin-bottom: 24px; }
	.ci-hero { grid-template-columns: 1fr; min-height: auto; padding: 30px 0 55px; }
	.ci-hero h1 { font-size: clamp(3rem,14.5vw,4.9rem); }
	.ci-hero-motif { display: none; }
	.ci-explorer-bar { grid-template-columns: 1fr; gap: 15px; padding: 24px; }
	.ci-explorer-bar > p { text-align: left; }
	.ci-map-panel { padding: 20px 16px; }
	.ci-map { height: 390px; }
	.ci-map-node { width: 43px; height: 43px; justify-content: center; padding: 0; border-radius: 50%; }
	.ci-map-node strong { display: none; }
	.ci-map-node span { flex: 0 0 29px; width: 29px; height: 29px; }
	.ci-detail { min-height: 0; padding: 31px 23px; }
	.ci-detail-sections { grid-template-columns: 1fr; }
	.ci-detail-actions { grid-template-columns: 1fr 1fr; }
	.ci-detail-actions a { grid-column: 1 / -1; grid-row: 1; }
	.ci-structure-nav { grid-template-columns: 1fr; }
	.ci-structure-nav button { min-height: 66px; border-right: 0; border-bottom: 1px solid var(--ci-line); }
	.ci-section-heading,.ci-context,.ci-sources { grid-template-columns: 1fr; gap: 24px; }
	.ci-reading,.ci-context,.ci-sources { margin-top: 72px; }
	.ci-status-grid { grid-template-columns: 1fr; }
	.ci-status-grid article { min-height: 155px; }
	.ci-status-grid h3 { margin-top: 24px; }
	.ci-context { padding: 36px 25px; }
	.ci-source-list a { grid-template-columns: 120px 1fr auto; }
}

@media (max-width: 440px) {
	.ci-map { height: 340px; }
	.ci-map-foot { align-items: flex-start; flex-direction: column; gap: 7px; }
	.ci-form-illustration { transform: scale(.86); transform-origin: center bottom; }
	.ci-evidence-list li { grid-template-columns: 58px 1fr; }
	.ci-source-list a { grid-template-columns: 1fr auto; gap: 5px 12px; }
	.ci-source-list small,.ci-source-list strong { grid-column: 1; }
	.ci-source-list span { grid-column: 2; grid-row: 1 / 3; }
}
