.jat-origins {
	padding: var(--jat-section-padding) 0;
	background: var(--jat-background, #F7F4EE);
}

.jat-origins-grid {
	display: grid;
	grid-template-columns: 0.85fr 1.15fr;
	gap: 52px;
	align-items: center;
}

.jat-origins-copy p { color: #5a5a5a; max-width: 420px; }

/* Origins page — Kerinci narrative sections (no map). */
.jat-origins-story { padding: var(--jat-section-padding) 0; background: #fff; }
.jat-origins-story-grid {
	display: grid;
	grid-template-columns: minmax(280px, 400px) 1fr;
	gap: 50px;
	align-items: center;
}
.jat-origins-story-copy p { margin-bottom: 1em; color: #444; }

.jat-origins-zones { padding: var(--jat-section-padding) 0; background: var(--jat-primary, #163A24); color: #fff; }
.jat-origins-zones h2 { color: #fff; max-width: 560px; margin-bottom: 40px; }
.jat-origins-zone-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; }
.jat-origins-zone-card {
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.12);
	border-radius: var(--jat-radius-md);
	padding: 28px;
}
.jat-origins-zone-card h3 { color: #fff; margin-bottom: 0.2em; }
.jat-origins-zone-altitude { color: var(--jat-accent, #B58A3C); font-weight: 600; font-size: 0.9rem; margin-bottom: 1em; }
.jat-origins-zone-card ul { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.jat-origins-zone-card li { color: rgba(255,255,255,0.85); font-size: 0.92rem; padding-left: 20px; position: relative; }
.jat-origins-zone-card li::before {
	content: "";
	position: absolute;
	left: 0; top: 0.5em;
	width: 8px; height: 8px;
	border-radius: 50%;
	background: var(--jat-accent, #B58A3C);
}
.jat-origins-zone-arabica { border-top: 3px solid #4B7A4F; }
.jat-origins-zone-robusta { border-top: 3px solid #8B5A2B; }

.jat-origins-practices { padding: var(--jat-section-padding) 0; background: var(--jat-background, #F7F4EE); }
.jat-origins-practices h2 { max-width: 560px; margin-bottom: 40px; }
.jat-origins-practices-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 24px;
	margin-bottom: 40px;
}
.jat-origins-practice { text-align: center; padding: 20px 14px; }
.jat-origins-practice h4 { margin-bottom: 0.4em; font-size: 1rem; }
.jat-origins-practice p { font-size: 0.86rem; color: #666; margin: 0; }
.jat-origins-cta { text-align: center; }

@media (max-width: 900px) {
	.jat-origins-story-grid { grid-template-columns: 1fr; }
	.jat-origins-map-wrap { order: -1; }
}

/* Kerinci-area interactive map (homepage teaser + Origins page) —
   Leaflet + OpenStreetMap, tightly zoomed to Kerinci Highlands and its
   surrounding districts rather than all of Indonesia. */
.jat-origins-map-wrap { position: relative; }

.jat-origins-map {
	width: 100%;
	height: 420px;
	border-radius: var(--jat-radius-lg);
	overflow: hidden;
	box-shadow: var(--jat-shadow-sm);
	background: #e9e4d6;
	z-index: 0;
}
.jat-origins-map .leaflet-control-zoom a { font-family: 'Lora', serif; color: var(--jat-primary, #163A24); }
.jat-origins-map .leaflet-popup-content-wrapper { border-radius: var(--jat-radius-sm); }

@media (max-width: 768px) {
	.jat-origins-map { height: 320px; }
}

/* Custom pulsing pin marker. */
.jat-kerinci-pin-dot {
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--jat-accent, #B58A3C);
	border: 3px solid #fff;
	box-shadow: 0 0 0 4px rgba(181,138,60,0.25), var(--jat-shadow-sm);
	position: relative;
}
.jat-kerinci-pin-dot::after {
	content: "";
	position: absolute;
	inset: -6px;
	border-radius: 50%;
	border: 2px solid var(--jat-accent, #B58A3C);
	opacity: 0;
	animation: jatPinPulse 2.6s ease-out infinite;
}
.jat-kerinci-pin-arabica .jat-kerinci-pin-dot { background: #4B7A4F; }
.jat-kerinci-pin-arabica .jat-kerinci-pin-dot::after { border-color: #4B7A4F; }
.jat-kerinci-pin-robusta .jat-kerinci-pin-dot { background: #8B5A2B; }
.jat-kerinci-pin-robusta .jat-kerinci-pin-dot::after { border-color: #8B5A2B; }

@keyframes jatPinPulse {
	0% { transform: scale(0.6); opacity: 0.55; }
	100% { transform: scale(1.8); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.jat-kerinci-pin-dot::after { animation: none; }
}

.jat-leaflet-popup { min-width: 200px; max-width: 240px; font-family: 'Lora', serif; }
.jat-leaflet-popup-image {
	width: 100%;
	height: 100px;
	border-radius: var(--jat-radius-sm);
	background-size: cover;
	background-position: center;
	background-color: #e9e4d6;
	margin-bottom: 10px;
}
.jat-leaflet-popup h4 { font-size: 1rem; margin: 0 0 0.2em; }
.jat-leaflet-popup p { font-size: 0.82rem; color: #444; margin: 0 0 0.4em; }
.jat-leaflet-popup-province { color: var(--jat-secondary, #6F4E37); font-weight: 600; }
.jat-leaflet-popup a { color: var(--jat-secondary, #6F4E37); font-weight: 600; font-size: 0.82rem; }
